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工作.

相关文章

目录前言一、创建Hadoop用户二、更新apt和安装Vim编辑器三、...
原文连接:https://www.cnblogs.com/yasmi/p/5192694.html ...
电脑重启后,打开VirtualBox,发现一直用的虚拟机莫名的消失...
参见:https://blog.csdn.net/weixin_38883338/article/deta...
Ubuntu 18.04 LTS 已切换到 Netplan 来配置网络接口。Netpla...
介绍每个 Web 服务都可以通过特定的 URL 在 Internet 上访问...