Nagios不能在启动后启动

我刚刚完成了一个Nagios 4.1.1的小安装。 它使用Raspbian在Raspberry Pi上运行。 检查出好的,当我用/etc/init.d/nagios start手动/etc/init.d/nagios start它时,它工作正常。

我总是告诉我的debian系统通过这样做来启动系统启动: ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios我可以看到符号链接已经成功创build。

但是,启动时不会启动。 系统启动后,我可以运行启动脚本,通过执行/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脚本首次在基于Debian的系统上为Nagios带来问题。 我要closures这个,并在Nagios bugtracker上打开一张票。

这似乎是init.d脚本格式化的问题。 这解决了我的问题:

首先,编辑nagios init.d脚本:

 nano /etc/init.d/nagios 

replace这样开始和结束的块:

 ### 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它将覆盖这个文件,你将不得不这样做。 另一种方法是安装你所需要的,而不需要init脚本。

是的,你说得对。 初始化脚本格式不正确。

你可以尝试在这里初始化脚本: http : //roger.steneteg.org/blog/installing-nagios-from-source/