Running Upstart user jobs on startup
Posted
by
dgel
on Server Fault
See other posts from Server Fault
or by dgel
Published on 2011-11-23T20:27:24Z
Indexed on
2011/11/24
1:56 UTC
Read the original article
Hit count: 444
I am running Ubuntu server 11.04. I have created an Upstart user job as described here.
I have the following file at my /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
As myuser
I can start, stop, and reload the job fine- it works perfectly:
$ start sensors
sensors start/running, process 1332
$ stop sensors
sensors stop/waiting
The problem is that the job is not starting automatically at boot when mysql
starts. After a fresh boot, mysql
is running but my sensors
job is not.
What's strange, is that although the job doesn't begin on bootup, if I use sudo
to restart mysql
it does indeed start my job. The following commands are run as myuser
from a fresh startup:
$ status sensors
sensors stop/waiting
$ sudo restart mysql
mysql start/running, process 1209
$ status sensors
sensors start/running, process 1229
The documentation for Upstart user jobs is pretty limited. What is the correct technique to have a user job start automatically on startup of the system?
I know I can just throw something in rc.local
to start it, or I could move my sensors.conf
to /etc/init
but I'm curious if there is a way to do it using just Upstart.
© Server Fault or respective owner