Назад | Перейти на главную страницу

Nagios Woudn't Start, теперь не остановится!

Я запустил обновление на сервере CentOS, на котором запущен Nagios, после обновления Nagios не запустился.

Ошибка в журналах была:

Не удалось получить блокировку файла /var/run/nagios.pid: в доступе отказано

Итак, я проверил, и в / var / run не было файла pid для Nagios. Я создал его и дал ему следующие разрешения:

-rwxr - r-- 1 nagios nagios 6 31 мая 11:58 nagios.pid

Затем Nagios запустился и, похоже, работает нормально.

Единственная проблема в том, что сейчас он отказывается останавливаться, поэтому я не могу перезапустить его, чтобы добавить новые серверы и сервисы для мониторинга!

Когда я запускаю команду «service nagios stop», я получаю [FAILED], но в журнал ничего не выводится, и служба остается работающей.

Есть идеи, как я могу остановить обслуживание сейчас?

Я использую версию RPM, которая была установлена ​​через yum из репозиториев RPMForge. Сервер - CenotOS 5.5.

Если вы не хотите изменять разрешения на / var / run саму папку, вы можете настроить nagios для хранения файла блокировки в любом месте системы, добавив строку ниже в свой nagios.cfg файл. Пока вы указываете lock_file в каталог, к которому у nagios есть доступ для создания, изменения и удаления файлов, тогда вам все будет в порядке.

Вы даже можете сохранить файл блокировки в каталоге установки nagios, создав каталог вроде: / usr / lib / nagios / var

lock_file=/usr/lib/nagios/var

Сначала узнайте, что pid из nagios процесс:

$ ps aux | grep nagios

Затем вы можете использовать эту команду для перезапуска службы:

kill -HUP <nagios_pid>

и это остановить:

kill <nagios_pid>

Чтобы остановить нагиос автоматически, у вас должна быть pid в /var/run/nagios.pid. Проверь это.

Как сказал выше Барт Б. не chmod 777 любой каталог в производственной системе, за исключением случаев, когда для этого есть действительно веская причина и вы не знаете, что делаете. Это было быстрое исправление, но это не решение.

Правильным решением этой проблемы, по крайней мере для меня, было обновление файла конфигурации nagios.cfg Nagios (мой - /etc/nagios/nagios.cfg) и изменение эта строка:

   lock_file=/var/run/nagios.pid

к этому:

   lock_file=/var/nagios/nagios.pid

Для файла блокировки установлено значение /var/nagios/nagios.pid в файле конфигурации службы /etc/init.d/nagios, но, по-видимому, он переопределен указанным выше значением в nagios.cfg.

Затем вы можете перезапустить службу / демон Nagios:

   service nagios restart

Это должно сработать.

В Centos / RedHat 7 вы не должны писать напрямую в каталог / var / run, но у вас есть подкаталог / var / run / nagios. Убедитесь, что опция lock_file указывает на это вместо этого:

lock_file=/var/run/nagios/nagios.pid

Если на сервере Nagios возникла проблема с запуском / остановкой в ​​CentOS 6.x, я использую эту команду: /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg

Он работает на моем сервере Nagios.

Как насчет:

/etc/init.d/nagios stop

У меня такое же поведение при обновлении до centos 5.5. Для меня это произойдет, если я изменю разрешение / var / run на 777:

chmod 777 / var / run

Я знаю, что это не лучший способ взлома, но у меня не было времени, чтобы понять, в чем проблема.