Форсирование fsck на CentOS 7

На старых системах это делалось просто — созданием специального файлика в /. Теперь в эпоху Systemd, это надо передавать из строки ядра из Grub2.

По умолчанию, если на FS которая монтируется во время запуска системы, содержится неконсистентность, systemd загрузит вас в так называемый Emergency mode, который затребует введение пароля root-пользователя и выполнения fsck вручную.

Это можно контролировать специальным параметром — fsck.repair.

Выдержка из документации:

fsck.repair=

One of «preen», «yes», «no». Controls the mode of operation. The default is «preen», and will automatically repair problems that can be safely fixed. «yes» will answer yes to all questions by fsck and «no» will answer no to all questions.

Поэтому достаточно добавить в строку с ядром:

fsck.repair=yes

И все произойдет автоматически, что сократит время на восстановление системы в целом.

Форсирование синхронизации mdadm массива

Имеем RAID10 на четырех дисках. Один надо заменить по износу или еще какой-либо причине.

Делаем

mdadm /dev/mdN -f /dev/sdN
mdadm /dev/mdN -r /dev/sdN

Вставляем новый диск, чистим его, если юзанный.

Копируем таблицу разделов, если надо — генерим новый UUID.

Вставляем в массив обратно, и видим вместо привычной картины resync-а, state — degraded, а вставленный, новый диск — Spare.

Continue reading

CloudFlare ERROR 1000

Иногда можно столкнуться с подобной ошибкой, в случае если сайт работает через CloudFlare. Техподдержка самого CF фактически морозится и отправляет вас в официальный faq, который не то чтобы очень полезный в данном случае.

Вполне вероятно, что причин подобной ошибки может быть несколько, я опишу конкретно ту, с которой столкнулся лично.

В моем конфиге nginx, проксирование на бекенд происходит по имени домена, а также отдельно прописана директива resolver, для использования nginx-ом определенных мною резолверов, а не локального.

И вот тут причина — резолверы, прописанные в конфиге, отдавали А-запись для проблемного домена, указывающую также на CF, вместо локального, правильного адреса. В итоге получалось, что-то вроде зацикленного редиректа, и CF конечно же для разрывания цепи отдавал ошибку.

Решилось конечно же все просто — исправлением локальной А-записи. Возможно и в вашем случае что-то подобное, смотрите на правильный резолвинг доменов и отсутствие замкнутых циклов.

Vagrant, проблема со стартом сервисов

Частенько случается ситуация, когда в вашем Vagrant-окружении, существуют сервисы, зависящие от shared-каталогов. Будь то файлы конфигов для службы, или например DocumentRoot для Apache.

В этом случае, при поднятии машины, требуемые службы не поднимутся с высокой долей вероятности.

Continue reading

Уменьшение ploop диска

В случае когда используется ploop для openvz контейнеров, иногда требуется проводить ревизию блочных устройств на предмет их размера. У них такая особенность — они автоматически растягиваются в пределах созданной файловой системы, но естественно не сжимаются (собственно особенности FS ext4 например).

В целом это ок, и не доставляет проблем, но допустим у вас заканчивается место, произошел просчет с максимально выделенным диском под контейнеры, и теперь ай-ай — места нет. Но при этом есть такие контейнеры, которые когда-то разрослись до максимума, а потом сжались обратно. Мало ли по какой причине — это не важно.

Continue reading

Intel i350 driver on Linux

Недавно настраивал bond для 4х таких карточек на сервере, столкнулся с проблемкой — по дефолту карты не определяются системой и надо ставить отдельно драйвер.

Скачал где положено исходники.

Вроде бы все поставилось, но карты так и не определяются… В логе нашел такую ошибку:

NVM Checksum Is Not Valid

Continue reading

Удаление физически отсутствующего faulty диска из mdadm массива

Бывает такая беда, когда диск переходит в faulty состояние в массиве, и удаляется физически по той или иной причине, без выполнения

mdadm /dev/mdX -r /dev/sdXX

Это выливается в то, что при попытке сделать после отключения диска, remove из массива — вы получите ошибку о том, что его собственно нет. Но в массиве он значится… Мда, проблемка.

Continue reading

sftp на proftpd и доступ по ключам

Вкратце расскажу, как запустить sftp-модуль для proftpd и организовать доступ к нему по ключам.

О самом протоколе sftp можно прочитать в любом доступном в сети источнике — информации предостаточно, также очевидны преимущества его использования перед ftp.

Имеем основной конфиг (CentOS в моем случае):

/etc/proftpd.conf

Continue reading

Исполнение локального python скрипта на удаленном узле

Есть способы выполнения локального скрипта на удаленных хостах через ssh. Т.е. все понятно, есть всякие puppet-ы, ansible-ы и прочее добро, но они массивны, требуют сетапа и настройки, и далеко не всегда это необходимо делать.

Есть несколько серверов, на них надо быстренько выполнить скриптик и забыть об этом, так? Ну вот, без дополнительных инструментов, это сводится к тому, что мы открываем подключение к серверу через ssh, и желаемый скрипт перенаправляем в stdin удаленного сервера, строго говоря просто набор команд из скрипта.

Continue reading

Проблема с отображением realip на cpanel+nginx

Окружение: cpanel 58+nginx+apache 2.4+EA4

Суть — в domlogs apache не отображается корректный ip посетителя.

С учетом правильных конфигов в

/etc/apache2/conf.modules.d/360_mod_remoteip.conf

И наличия соответствующего модуля:

#rpm -qa |grep -i remote
ea-apache24-mod_remoteip-2.4.25-4.el7.cloudlinux.x86_64

все сводится к тому, что по факту не настроен корректный log_format у апача, а все потому, что log_format невозможно изменить в

Continue reading

© 2017 servadmin.ru

Theme by Anders NorénUp ↑