====== Linux ====== ===== Gestion des services ===== \\ ==== upstart ==== ^Référence |[[https://doc.ubuntu-fr.org/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 //// 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 | //// 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 === * Liste des services Upstart accompagnés de leur état ainsi que leur pid : $ 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. * Désactiver un service de tous les runlevels //il suffit de renommer le fichier de configuration.// # exemple : $ sudo mv /etc/init/.conf /etc/init/.conf.noexec //Au prochain redémarrage du système, le service correspondant ne sera plus lancé.// * Réactiver un service //on fait la manipulation inverse// $ sudo mv /etc/init/.conf.noexec /etc/init/.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''. \\ ----