I frequently find myself writing upstart scripts which checkout ok, but for some reason don't get detected by the upstart daemon in the init directory, so when I run
start myscript I get
unknown job back. Some experimentation seems to indicate that the problem is I used gedit over GVFS SFTP to author a lot of these scripts.
For something like
myscript.conf, I find the following fixes this problem:
mv myscript.conf myscript.conf.d mv myscript.conf.d myscript.conf
And then hey presto, the script works perfectly.
Along the same lines, the
init-checkconf utility isn't mentioned enough for upstart debugging - my last post shows I clearly didn't know about it. Using it is simple:
$ init-checkconf /etc/init/myscript.conf
Note it needs to be run as a regular user. I'm often logged in as root, so sudo suffices:
$ sudo -u nobody init-checkconf /etc/init/myscript.conf