J'ai écrit un service upstart
après le article du wiki Ubunt et créé un fichier .conf
dans /etc/init/
. Il n'y a pas d'instructions sur la procédure à suivre pour rendre le script disponible dans initctl list
et pour les commandes de gestion upstart
, telles que start
et service
. Le livre de recettes officiel n'explique pas cette affaire.
Le départ échoue avec
$ start archiva
start: Unknown job: archiva
$ service archiva start
archiva: unrecognized service
Il y a probablement des erreurs dans votre fichier de configuration. Pour le vérifier, utilisez:
init-checkconf archiva.conf
ou
initctl check-config archiva
comme décrit dans le livre de recettes upstart: 10.1.6.2 initctl check-config et 10.1.7 init-checkconf .
Par la suite, utilisez le démon init qui, selon la page de manuel:
Au démarrage, le démon Upstart init (8) lit la configuration de son travail à partir des fichiers du répertoire/etc/init/et surveille les modifications futures de ces fichiers à l'aide de inotify (7).
Ainsi, une fois que vous avez placé votre fichier de configuration dans /etc/init
, votre service est activé et lors du prochain redémarrage, le démon init le lancera.
Upstart utilise inotify. Si vous déposez un fichier de configuration dans /etc/init/
, Upstart devrait détecter et rendre le travail disponible automatiquement. Si vous ne le voyez pas apparaître, il peut y avoir un problème dans votre nouvelle configuration. Essayez de vérifier les journaux pour les erreurs.
Définir une variable dans le fichier /etc/init/scriptname.conf
sous la forme de NAME=value
comme vous le feriez dans un script initd
fait en sorte que upstart donne ce retour plutôt absurde (dire qu'il y a une erreur de syntaxe est beaucoup plus approprié que de dire que le script n'existe pas) . Si vous supprimez la ligne, le script est reconnu et peut être démarré de manière aléatoire (voir l'amélioration suggérée sous le nom bogue 1446577 sur launchpad.net pour plus de détails).