Nagios

Nagios 啟動後無法啟動

  • September 30, 2015

我剛剛完成了一個小的 Nagios 4.1.1 安裝。它使用 Raspbian 在 Raspberry Pi 上執行。檢查沒問題,當我手動啟動它時,/etc/init.d/nagios start它工作正常。

我總是告訴我的 debian 系統通過執行以下操作在系統啟動時啟動:ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios我可以看到符號連結已成功創建。

但是,它不會在啟動時啟動。我可以在系統啟動後執行啟動腳本,/etc/rcS.d/S99nagios start這樣我知道(/think)符號連結很好。當伺服器啟動時,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 腳本第一次在基於 Debian 的系統上導致 Nagios 出現問題。我將關閉它並在 Nagios bugtracker 上打開一張票。

這似乎是 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 塊缺少一些東西。我確實更喜歡這種方法,而不是為 Nagios 使用其他人的 init.d 文件,因為我相信開發人員可能比我更好地維護該腳本。需要注意的一件事是,如果您從原始碼更新 Nagios,並且執行make install-init它會覆蓋此文件,您將不得不再次執行此操作。另一種方法是安裝您需要的東西,省略初始化腳本。

引用自:https://serverfault.com/questions/725856