从nagios启动lighttpd呈现lighttpd破碎

我使用的是Debian 7.8(wheezy),以及使用nagios 3.4.1的lighttpd 1.4.31。

当我正常启动lighttpd(以root身份)时,一切都按预期工作:

/etc/init.d/lighttpd start 

但是,当nagios启动lighttpd时,一切都会发出404错误,并且没有任何内容logging到/var/log/lighttpd/access.log/var/log/lighttpd/error.log 。 我可以通过以root身份发出以下命令来手动模仿相同的行为:

 su - nagios -s /usr/bin/sudo /etc/init.d/lighttpd start 

nagios守护进程具有sudo访问权限,如/etc/sudoers.d/nagios所定义的/etc/sudoers.d/nagios

 nagios ALL=(root) NOPASSWD: /etc/init.d/lighttpd * 

我错过了什么? 直接以root用户身份启动lighttpd和通过sudo以nagios用户身份进行操作有什么区别?

当它启动lighttpd的时候,nagios _actually_using_ sudo?

那么,是运行“sudo /etc/init.d/lighttpd start”,还是运行“/etc/init.d/lighttpd start”。

当不从sudo运行…它不会作为根运行,因此将无法正常工作。

如果有疑问…编辑/etc/init.d/lighttpd脚本,并让它在一开始就打印它的用户,如:

id> /tmp/ligghtpd.start.$$

然后检查/tmp/ligghtpd.start.*文件。