Les services et démons

0Linux utilise un ensemble de scripts d'initialisation « à la BSD », pourvu d'un système permettant d'être compatible avec SysV, utilisé sur de nombreuses autres distributions.

Les fichier services permettant de lancer, d'arrêter ou de redémarrer des services ou démons se trouvent dans /etc/rc.d où, sous d'autres systèmes Linux de type SysV, on les trouve sous /etc/init.d.

On lance, relance et arrête le service SSH de la façon suivante, respectivement :

/etc/rc.d/rc.sshd start
/etc/rc.d/rc.sshd restart
/etc/rc.d/rc.sshd stop

Cela présuppose donc que les fichiers rc.* appelés sont exécutables. Pour interdire le lancement d'un service au démarrage du système, il suffit donc d'enlever la permission en exécution du fichier rc.* concerné.

Par exemple, si l'on veut empêcher ssh de se lancer au démarrage :

chmod -x /etc/rc.d/rc.sshd

Pour le réactiver à chaque démarrage :

chmod +x /etc/rc.d/rc.sshd

Chaque fichier rc.* est censé prendre en charge les commandes start, stop et restart, à l'exception de rc.local. Certains prennent en charge la commande status. Bien qu'anglophone, ce fonctionnement est répandu et parle de lui-même. Il est possible d'ajouter des commandes francophones si la demande existe, on attend les bonnes idées !


Ajouter ses propres scripts au démarrage

On peut ajouter les scripts ou les commandes de son choix au fichier /etc/rc.d/rc.local : il sera conservé tel quel lors d'une mise à jour du paquet initialisation-systeme. Ce script est tout simplement exécuté après tous les autres ; nul besoin d'implémenter des fonctions 'start', 'stop' ou 'restart', il suffit d'y écrire les commandes voulues.