我需要在 14.04 服务器上启动时启动一些应用程序。我有一个 conf 文件,/etc/init/fireimager.conf
它执行一个启动其他脚本的脚本,已经测试过了,它在 3 月份运行正常。今天我一直在编写代码,并在启用配置文件的情况下启动,但它不再工作了:它退出并出现错误 2。我怀疑某些更新/升级改变了一些东西。
我希望脚本在启动基本完成时启动。我是 LINUX 新手。
fireimager.conf(未进行日志记录):
description "Copies fireimager executeables to the ram disk and executes them."
author "Robert Lockwood"
#start on filesystem or runLevel [2345]
start on net-device-added INTERFACE=eth0
stop on shutdown
script
echo "[`date`] Fireimager initializing Started" >> /var/log/fireimager.log
exec /home/programmer/bin/init/inittest
end script
答案1
可能是你的start
命令让你的脚本过早执行。我不知道 fireimager 到底是做什么的,但也许你想在网络启动后启动它?
start on net-device-up
我不知道是否可以指定 INTERFACE。但是 net-device-added 意味着接口存在,但不一定已启动,这可能是一个问题。
系统启动后,您还可以在命令行上尝试脚本,以确保它能正常工作。如果是这样,那么这start
肯定是您需要调整的唯一内容。
以下还有:
exec /home/programmer/bin/init/inittest
我们看到脚本被放置在/home/programmer/...
不安全的目录下。我认为启动脚本不会检测到这一点,但我会将该脚本移到系统可以预期此类脚本的其他地方(可能在下/usr/local/bin
)。