继此问题之后,我为无头的Ubuntu Server 11.04框编写了一个简单的upstart服务(/etc/init/pms.conf),如下所示:
start on filesystem and net-device-up IFACE=eth0
stop on runlevel [016]
respawn
exec /home/administrator/pms-current/PMS.sh
我可以从命令行随意启动(或停止)此服务:
service pms start
我可以看到它确实正在运行。
但是,当我第一次启动机器时,该服务无法启动。如果我通过SSH进入框中并检查服务状态,则会得到:
$ service pms status
pms stop/waiting
我的问题是为什么会这样?为什么我的服务无法在启动时启动?
更新1:不确定我的服务是否正在启动然后随后终止或根本就没有启动,我在PMS.sh中添加了以下内容:
echo "STARTED" > $STARTLOG
这显然给了我一些东西。我通过自己启动服务,然后检查start.log进行了测试。然后,我删除了start.log并重新启动。重新启动后不存在,所以看来新贵肯定没有启动我的服务。我想它可能会在此过程的早期消失,但是鉴于所有操作的简便性,这似乎不太可能。
更新2:我刚刚升级到11.10,其中包括新贵升级,但是仍然会出现此问题。
更新3:根据要求,我已经启动了--debug
。cat的输出/var/log/syslog | grep init
太长,无法放入问题中,但是您可以在此处查看它。
cat /var/log/syslog | grep init
使用Upstart Debugging