scripts de init.d
Séb
seb.bubuntu at gmail.com
Sam 29 Aou 22:11:52 UTC 2009
Etienne a écrit :
> bonjour
Bonsoir,
> comment puis je savoir quels sont les scripts exécutés au démarrage ?
Tout dépend de quel démarrage tu parles (système, réseau, serveur
graphique, session) car tu peux intervenir à différent niveaux et cela
correspond à différents "emplacements" pour les scripts.
Comme il y a plusieurs facon de procéder, il est assez judicieux de se
demander à quel niveau le script/programme/deamon est censé intervenir
pour savoir où son exécution devrait être indiquée.
Que veux-tu faire exactement?
> J'ai trouvé une commande update-rc.d mais apparemment elle ne
> comporte pas d'argument show comme dans gentoo.
> suffit il de regarder ce qui est dans /etc/default ?
/etc/defaut contient des fichiers de configuration "par défaut" et est
assez éloigné des scripts de démarrage.
Quand il s'agit de deamons qui doivent être lancés au démarrage du
système, la méthode usuelle est la suivante:
1. On installe le script de démarrage/arrêt du deamon dans le répertoire
/etc/init.d
2. On se sert ensuite d'update-rc.d pour créer des liens symbolique du
script dans les différents dossiers /etc/rcX.d/ où X est le
l'identifiant du runlevel. (cf. http://fr.wikipedia.org/wiki/Run_level)
L'avantage de cette facon de faire (héritée d'UNIX) et qu'il suffit de
regarder le contenu du dossier /etc/rc2.d/ (les dossier 2 à 5 sont
normalements redondants sous Debiant/Ubuntu) pour savoir quels sont les
script exécutés au lancement du système.
A noter que le lien créé porte toujours un nom répondant à une syntaxe
particulière: il commence par S ou K suivant si le deamon est censé être
lancé ou arrêté, suivi de 2 chiffres (pour gérer la priorité) et enfin
le nom.
S99toto indique donc un lancement du script "toto" avec une priorité de
99 (la plus faible)
Je te renvois à la documentation d'update-rc.d (accessible via "man
update-rc.d") qui indique assez bien tout cela.
> j'ai deux deamon ntpd qui tournent .
>
> pstree -p
> ├─ntpd(3430)───ntpd(3431)
> ├─ntpd(31126)───ntpd(31127)
>
> Mon hypothèse est que l'un a été lancé par openntpd et l'autre a été
> lancé par moi avec la commande ntpd.
>
> comment savoir lequel des deux processus tuer ?
a priori, celui qui à la pid le plus élevé a été lancé plus tard et donc
plutôt par l'utilisateur... mais pour être sur il vaut mieux regarder
les détails via, par exemple, la commande:
~$ ps aux | grep ntpd
> merci
>
Séb
Plus d'informations sur la liste de diffusion ubuntu-fr