我有一个进程,我希望尽快通过任何方式重新启动我的系统,所以我使用upstart脚本,但有时我注意到我的进程在硬重启期间没有启动(插入并启动所以我认为我的暴发脚本在重启后没有被踢进去.我相信Hard Reboot没有运行级别.
我很困惑,为什么有时在重启期间它有效,但有时它不起作用.我该如何调试呢?
以下是我的新贵脚本:
# sudo start helper
# sudo stop helper
# sudo status helper
start on runlevel [2345]
stop on runlevel [!2345]
chdir /data
respawn
pre-start script
echo "[`date`] Agent Starting" >> /data/agent.log
sleep 30
end script
post-stop script
echo "[`date`] Agent Stopping" >> /data/agent.log
sleep 30
end script
limit core unlimited unlimited
limit nofile 100000 100000
setuid goldy
exec python helper.py
有没有办法调试出来发生了什么?我相信,我可以很容易地重现这一点.关于我在这里可以做什么的任何指示?
注意:
在重新启动期间,有时我会看到我在启动前脚本中的日志记录,但有时我在重新启动后根本看不到日志记录,这意味着我的upstart脚本未被触发.有什么我需要在运行级别上更改以使其工作?
我有一个在Hypervisor中运行的VM,我正在使用Ubuntu.
最佳答案
您的进程运行良好,但在系统启动期间,许多事情都是平行的.
如果挂载(使/ data文件夹可用)比预启动脚本运行得晚,您将看不到启动前脚本的“结果”.
我建议提前30点睡觉(BTW 30秒似乎过于宽松):
pre-start script
sleep 30 # sleep 10 should be enough
echo "[`date`] Agent Starting" >> /data/agent.log
end script
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。