【问题标题】:Upstart won't start my job暴发户不会开始我的工作
【发布时间】:2014-06-18 20:56:22
【问题描述】:

我很难弄清楚我的脚本出了什么问题。我是 linux 世界的新手,所以我可能会遗漏一些非常琐碎的东西。我有一个 python 脚本,我想在 pc 启动时运行一个守护进程。我也想在崩溃的情况下重生它。在谷歌上看了几个小时后,我放弃了:)

到目前为止,这是我尝试过的:

description "some daemon service."

#start on startup
#stop on shutdown
#respawn


pre-start exec python3 /home/dato0011/PycharmProjects/untitled/main.py start

post-stop exec python3 /home/dato0011/PycharmProjects/untitled/main.py stop

当执行 initctl start "svc_name" 我得到 initctl: Job failed to start 错误。

谢谢

【问题讨论】:

    标签: linux daemon upstart python-daemon


    【解决方案1】:

    您的命令应该进入脚本部分,而不是启动前/启动后部分。否则服务根本不会启动,也不知道要跟踪哪个 PID 以进行重生等。

    script
       exec python3 /home/dato011/PPycharmProjects/untitled/main.py start
    end script
    

    在 stop upstart 时会用 kill 杀死你的进程。我不完全确定如何通过使用不同参数运行相同命令来按照您指定的方式杀死它 - 在我的情况下,我的 (nodejs) 应用程序在退出时处理事件并在那里进行任何清理。

    另外,你不需要使用 initctl 来启动和停止,只需使用启动和停止命令(即 start svc_name)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-12
      • 1970-01-01
      相关资源
      最近更新 更多