在ubuntu上使用upstart时,如何发出命令以启动作业(如果未运行)并重新启动(如果已运行)。将应用程序部署到新节点时,未定义作业。
initctl restart JOB complains if not already running
initctl start JOB complains if already running.
我可以编写脚本来做
initctl start JOB
initctl restart JOB
但这似乎并不是最好的事情。
最佳答案
我当时遇到了同样的问题。
缺少内置的initctl直接的“懒惰-停止-然后-开始”命令,我们必须编写脚本。
如果失败,则调用启动并重新启动:
initctl start JOB || initctl restart JOB
这个脚本可能不是我们两个人都在寻找的答案,但是它足够简短。
只要服务运行良好,就可以解决问题。
当服务失败时,此脚本失败两次;例如,如果服务已停止并且实际上无法启动,则它也将无法重新启动。
绝对希望对此有所改进。
我希望这有帮助。
关于upstart - UpStart initctl start |重启ubuntu,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9479668/