Comment lancer ou arrêter un script au démarrage de Linux ?
Gérer les processus qui se lancent au démarrage de Linux.
Testé sous Debian Squeeze.
Le processus init de Linux dispose généralement de 7 niveaux de fonctionnement (runlevel) : de 0 à 6. Selon le niveau de fonctionnement, des programmes sont automatiquement lancés. Si vous voulez faire démarrer un programme avec Linux il vous faudra donc deux choses :
- Placer le programme à lancer dans /etc/init.d et veiller à ce qu'il soit exécutable : chmod 755
- Créer un lien symbolique vers ce programme dans /etc/rcX.d, X étant le runlevel.
Connaître son runlevel
runlevel # Réponse: N 2 # ou who -r # Réponse: niveau d'exécution 2 2012-08-15 16:20 dernier=S
Evidemment, une commande existe pour que vous n'ayez pas à créer manuellement 7 liens symboliques.
Ajouter un programme au démarrage de Linux
# defaults est une configuration, # man update-rc.d vous en dira plus. update-rc.d nom_programme defaults
Pour ne plus lancer ce programme au démarrage, il suffit de supprimer les liens symboliques.
Ne pas lancer un programme au démarrage de Linux
update-rc.d -f nom_programme remove
Vous pouvez aussi très simplement vous servir de cron pour lancer une commande au démarrage.
Lancer une commande au démarrage avec cron
@reboot votre_commande