Table des matières

Linux

Gestion des services


upstart

Upstart est un successeur des scripts system V et se base sur les événements.
Il fonctionne de manière asynchrone : de la même manière qu'il gère le lancement et l'arrêt des services au démarrage et à l'arrêt de la machine, il les supervise pendant que le système tourne.

Gestion basique d'un service

L'outil de gestion des services dans upstart s'appelle initctl.

 $ sudo initctl <ACTION> <Nom_du_service>

<ACTION> sera la commande que l'on souhaite appliquer au service :

start démarrer le service
stop arrêter le service
restart relancer le service
reload recharger le service
status connaitre l'état du service

<Nom_du_service> est le nom du service visé. Quelle que soit l'action menée sur un service, au prochain démarrage de la machine celui-ci devrait retrouver le status qui lui a été défini par défaut.

Lister les services démarrés

 $ initctl list
   # ou
 $ initctl list | sort

Modifier l'exécution d'un service

Contrairement aux scripts system V qui utilisent l'outil update-rc.d, Upstart utilise des fichiers de configuration correspondant aux différents services à manipuler.
Ces fichiers de configuration, qui se trouve dans /etc/init/, permettent d'indiquer les conditions d'activation ou désactivation d'un service ou d'y insérer ses propres scripts.

il suffit de renommer le fichier de configuration.

# exemple :
 $ sudo mv /etc/init/<Nom_du_service>.conf /etc/init/<Nom_du_service>.conf.noexec
Au prochain redémarrage du système, le service correspondant ne sera plus lancé.

on fait la manipulation inverse

 $ sudo mv /etc/init/<Nom_du_service>.conf.noexec /etc/init/<Nom_du_service>.conf
Au prochain redémarrage du système, le service correspondant sera lancé automatiquement.
Néanmoins si vous souhaitez modifier l'état d'un service selon certaines conditions, vous devrez modifier le fichier /etc/init/NomService.conf.