J'utilise le serveur Ubuntu 11.04. J'ai créé un travail utilisateur Upstart comme décrit ici .
J'ai le fichier suivant chez moi /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
Comme myuser
je peux démarrer, arrêter et recharger le travail correctement, cela fonctionne parfaitement:
$ start sensors
sensors start/running, process 1332
$ stop sensors
sensors stop/waiting
Le problème est que le travail ne démarre pas automatiquement au démarrage au démarrage mysql
. Après un nouveau démarrage, mysql
fonctionne mais mon sensors
travail ne l'est pas.
Ce qui est étrange, c'est que même si le travail ne démarre pas au démarrage, si je le sudo
redémarre, mysql
il démarre effectivement mon travail. Les commandes suivantes sont exécutées à myuser
partir d'un nouveau démarrage:
$ status sensors
sensors stop/waiting
$ sudo restart mysql
mysql start/running, process 1209
$ status sensors
sensors start/running, process 1229
La documentation des travaux utilisateur Upstart est assez limitée. Quelle est la bonne technique pour démarrer automatiquement un travail utilisateur au démarrage du système?
Je sais que je peux jeter quelque chose dans rc.local
pour commencer, ou je pouvais bouger mon sensors.conf
à /etc/init
mais je suis curieux de savoir s'il y a un moyen de le faire en utilisant simplement Upstart.