ubuntu – 在启动时运行Upstart用户作业

前端之家收集整理的这篇文章主要介绍了ubuntu – 在启动时运行Upstart用户作业前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在运行ubuntu服务器11.04.我已经创建了一个Upstart用户作业,如 here所述.

我在/home/myuser/.init/sensors.conf中有以下文件

start on started MysqL
stop on stopping MysqL


chdir /home/myuser/mydir/project
exec /home/myuser/mydir/env/bin/python /home/myuser/mydir/project/manage.py sensors

respawn

respawn limit 10 90

作为我的用户,我可以启动,停止并重新加载工作,它完美地工作:

$start sensors
sensors start/running,process 1332
$stop sensors
sensors stop/waiting

问题是当MysqL启动时,作业不会在启动时自动启动.重新启动后,MysqL正在运行,但我的传感器工作却没有.

奇怪的是,虽然作业不是在启动时开始的,但是如果我使用sudo来重启MysqL,它确实开始了我的工作.以下命令作为myuser从一个新的启动运行:

$status sensors
sensors stop/waiting
$sudo restart MysqL
MysqL start/running,process 1209
$status sensors
sensors start/running,process 1229

Upstart用户作业的文档非常有限.在系统启动时自动启动用户作业的正确技巧是什么?

我知道我可以在rc.local中抛出一些东西来启动它,或者我可以将sensors.conf移动到/ etc / init但是我很好奇是否有办法只使用Upstart来完成它.

问题是在用户通过运行其中一个initctl命令创建Upstart会话之前,用户作业不会加载到Upstart中.

我在http://bradleyayers.blogspot.com.au/2012/04/enabling-upstart-user-jobs-to-start-at.html更详细地描述了它,并编写了一个解决问题的Upstart工作.

猜你在找的Ubuntu相关文章