Nagios не запускается после загрузки

Nagios не запускается после загрузки

У меня есть небольшая установка Nagios 4.1.1, которую я только что завершил. Она работает на Raspberry Pi с использованием Raspbian. Проверяется нормально, и когда я запускаю ее вручную с использованием, /etc/init.d/nagios startона работает нормально.

Я всегда указывал своим системам Debian запускать процессы при загрузке системы, делая что-то вроде этого: ln -s /etc/init.d/nagios /etc/rcS.d/S99nagiosя вижу, что символическая ссылка успешно создана.

Но он не срабатывает во время загрузки. Я могу запустить скрипты запуска после загрузки системы, сделав /etc/rcS.d/S99nagios startэто, я знаю (/думаю), что символическая ссылка хороша. Когда сервер запускается, Apache работает, и страница Nagios открыта, но на домашней странице написано "Невозможно получить статус процесса", что и ожидается, когда служба nagios не запущена. Есть ли способ посмотреть журналы запуска, чтобы увидеть, пытается ли он это сделать, или есть лучший способ заставить его запускаться при загрузке?

Обновление: Я запустил update-rc.dи получил следующее:

update-rc.d: using dependency based boot sequencing
update-rc.d: warning: default start runlevel arguments (2 3 4 5) do not match resize2fs_once Default-Start values (2 3 4 5 S)
update-rc.d: warning: default stop runlevel arguments (0 1 6) do not match resize2fs_once Default-Stop values (none)
insserv: Script nagios is broken: incomplete LSB comment.
insserv: missing `Default-Start:'  entry: please add even if empty.
insserv: missing `Default-Stop:'   entry: please add even if empty.
insserv: Script nagios is broken: incomplete LSB comment.
insserv: missing `Default-Start:'  entry: please add even if empty.
insserv: missing `Default-Stop:'   entry: please add even if empty.
insserv: Default-Start undefined, assuming empty start runlevel(s) for script `nagios'
insserv: Default-Stop  undefined, assuming empty stop  runlevel(s) for script `nagios'

Я никогда этого не видел и не знаю, что делать, но это должно быть как-то связано.

Обновление 2: Немного почитав, я пришел к выводу, что это может быть связано с форматированием скриптов init.d. Если это так, то, скорее всего, эта проблема есть и у других, и это не первый раз, когда скрипты init.d вызывают проблемы для Nagios в системах на базе Debian. Я собираюсь закрыть это и открыть тикет на багтрекере Nagios.

решение1

Похоже, проблема в форматировании скрипта init.d. Это решило проблему для меня:

Сначала отредактируйте скрипт nagios init.d:

nano /etc/init.d/nagios

Замените блок, который начинается и заканчивается следующим образом:

### BEGIN INIT INFO
#
# stuff in here
#
### END INIT INFO

С этим:

### BEGIN INIT INFO
# Provides: nagios
# Required-Start: $local_fs $syslog $network
# Required-Stop: $local_fs $syslog $network
# Short-Description: Start and Stop Nagios monitoring server
# Description: Nagios is is a service monitoring system
# Default-Start: start
# Default-Stop: stop
### END INIT INFO

Отздесь

Затем выполните:

sudo update-rc.d nagios defaults

Вы получите несколько предупреждений, которые можно смело игнорировать. Например:

update-rc.d: warning: default start runlevel arguments (2 3 4 5) do not match nagios Default-Start values (start)

Перезагрузитесь и проверьте. У меня теперь все запускается автоматически.

Итак, похоже, что общее форматирование соответствует требуемому стандарту, просто в блоке INIT не хватает некоторых вещей. Я предпочитаю этот метод использованию чужого файла init.d для Nagios, потому что я считаю, что разработчики, вероятно, поддерживают этот скрипт лучше, чем я. Стоит отметить, что если вы когда-либо обновите Nagios из исходного кода и запустите make install-initего, он перезапишет этот файл, и вам придется сделать это снова. Альтернатива — установить то, что вам нужно, исключив скрипт init.

решение2

Да, вы правы. Скрипт инициализации неправильно отформатирован.

Можете попробовать скрипт инициализации здесь:http://roger.steneteg.org/blog/installing-nagios-from-source/

Связанный контент