Chaque paquet qui fournit un démon standard utilisant upstart est tenu de fournir un lien symbolique dans le répertoire /etc/init.d
par la politique de Debian. Ainsi, l'autocomplétion pour sudo service _name_
fonctionne déjà. Assurez-vous que vous avez le bash-completion
installé si vous rencontrez des problèmes.
Si vous créez vos propres jobs upstart, alors faites un lien symbolique (symlink) /etc/init.d/_your_job_
a /lib/init/upstart-job
comme le font déjà les autres emplois de débutants. Cela permettra à vos propres emplois de fonctionner de la même manière.
Il existe des emplois spéciaux pour les débutants dans /etc/init
qui n'ont pas d'entrée correspondante dans /etc/init.d
. Ceux-ci sont une exception. De la charte Debian :
Une exception à cette règle est scripts ou les travaux fournis par l'implémentation init elle-même ; de tels travaux peuvent être nécessaires pour un équivalent spécifique à l'implémentation du /etc/rcS.d/ scripts et peuvent ne pas avoir une correspondance biunivoque avec le scripts init.
Ces exceptions ne fonctionnent pas actuellement avec bash-completion
. Cependant, vous pouvez utiliser start
, stop
, restart
y reload
directement sans service
et l'autocomplétion fonctionnera. Par exemple, sudo start shut
correctement les autocomplétions. Mais normalement, vous ne devriez pas avoir besoin d'appeler directement des jobs upstart qui n'ont pas de correspondance init.d
entrée.
Note : J'ai testé ceci sur Saucy. Si le support n'apparaît pas dans une ancienne version, il n'y est peut-être pas disponible (mais vous l'obtiendrez bientôt lorsque vous passerez à une version suffisamment récente).