Provided by:
manpages-fr-extra_20111118_all 
NOM
update-rc.d - Installer ou supprimer les liens vers les scripts
d'initialisation de type Systeme V
SYNOPSIS
update-rc.d [-n] [-f] nom remove
update-rc.d [-n] nom defaults [NN | SS KK]
update-rc.d [-n] nom start|stop NN runlevel [runlevel]... . start|stop
NN runlevel [runlevel]... . ...
update-rc.d [-n] nom disable|enable [ S|2|3|4|5 ]
DESCRIPTION
update-rc.d met a jour automatiquement les liens vers les scripts
d'initialisation de type Systeme V dont le nom est
/etc/rcrunlevel.d/NNnom vers les scripts /etc/init.d/name. Ils sont
lances par init quand on change de niveau de fonctionnement et ils sont
generalement utilises pour demarrer ou arreter des services tels que
les demons. runlevel est l'un des niveaux de fonctionnement autorises
par init, 0123456789S, et NN est le code a deux chiffres utilise par
init pour decider de l'ordre d'execution des scripts.
Cette page de manuel documente seulement le comportement de update-rc.d
et son utilisation. Pour une discussion sur la preparation des scripts
pour l'initialisation de type Systeme V voyez init(8) et la charte
Debian.
L'INSTALLATION DES LIENS DES SCRIPTS D'INITIALISATION
update-rc.d a deux mode de fonctionnement pour installer des scripts
dans la sequence de demarrage. Un mode d'origine qui utilise des
parametres en ligne de commande pour decider la configuration de la
sequence et des niveaux d'execution et le mode par defaut dans lequel
des information sur les dependances et les niveaux d'execution
contenues dans les commentaires de l'en-tete des script init.d LSB sont
utilisees a la place. Un tel en-tete doit etre present dans les scripts
init.d. Consultez la page de manuel de insserv(8) pour des details sur
le format de l'en-tete LSB. La methode de sequencement du demarrage est
decidee lors de l'installation ou des mise a jour. Lors des mises a
jour, s'il n'y a pas de boucle dans les dependances declarees par les
en-tetes LSB de tous les scripts init.d installes et qu'il n'y a pas de
script init.d obsolete, le systeme de demarrage est convertit en la
methode de sequencement basee sur les dependances. La conversion ne se
fait que dans un sens. Les machines qui utilisent le mode d'origine
auront un fichier /etc/init.d/.legacy-bootordering.
Les paquets qui installent des scripts init.d devrait s'assurer que les
deux methodes fonctionnent pour assurer la compatibilite avec les
systemes qui n'ont toujours pas migre.
Pour le mode d'origine, la section suivante documente l'ancien
comportement.
Quand update-rc.d est lance avec les options defaults, start, ou stop,
il cree les liens /etc/rcrunlevel.d/[SK]NNname qui pointent vers le
script /etc/init.d/name.
Quand des fichiers /etc/rcniveau_ex'ecution.d/[SK]??nom existent deja,
update-rc.d ne fait rien. C'est ainsi pour que l'administrateur systeme
puisse rearranger les liens -- a condition qu'il en reste au moins un
-- sans que sa configuration ne soit reecrite. Le programme
n'installera des liens que si aucun n'est present, c'est-a-dire s'il
semble que le service n'etait pas installe auparavant.
Une erreur courante d'administration d'un systeme consiste a supprimer
les liens en pensant que ca << desactive >> le service, c'est-a-dire
que ca empechera le service de demarrer. Cependant, si tous les liens
sont supprimes, alors la prochaine fois que le paquet est mis a jour,
le script postinst lancera update-rc.d de nouveau, ce qui reinstallera
les liens a leur emplacement par defaut. La facon correcte pour
desactiver des services est de configurer le service comme etant arrete
dans tous les niveaux d'execution pour lesquels il serait demarre par
defaut. Avec le systeme d'initialisation Systeme V, cela signifie qu'il
faut renommer le lien symbolique du service de S vers K.
Quand l'option defaults est utilisee, update-rc.d cree des liens pour
demarrer un service dans les niveaux d'execution 2345 et des liens pour
arreter un service dans les niveaux 016. Par defaut, tous les liens ont
un numero de sequence egal a 20, mais il devrait etre modifie s'il y a
des dependances. Par exemple, si le demon B depend du demon A, alors A
doit etre demarre avant B et B doit etre arrete avant A. Ceci se fait
en fournissant deux parametres NN. En general, les demons principaux
devraient demarrer tot et etre arretes tard, alors que les applications
peuvent etre demarree tard et etre arretee tot. Consultez la section
EXEMPLES ci-dessous.
Le premier parametre NN fournit le numero de sequence de demarrage et
le second parametre NN fournit le numero de sequence d'arret. Les
scripts d'arret sont appeles en premier, avec le parametre << stop >>.
Ensuite les script de demarrage sont appeles en leur fournissant le
parametre << start >>. Dans les deux cas, les scripts sont appeles dans
l'ordre ascendant des numeros de sequence.
Lorsqu'un seul parametre NN est fourni, le meme nombre est utilise pour
les liens de demarrage et d'arret. Ceci est pris en charge pour des
raisons de compatibilite ascendante, mais n'est pas conseille, puisque
cela peut entrainer une configuration incoherente. Comme regle de base,
si vous augmenter le numero de sequence pour le demarrage, vous devriez
diminuer le numero de sequence pour l'arret, et vice-versa.
Comme regle empirique, le numero de sequence du lien d'arret doit
valoir 100 moins le numero de sequence du lien de demarrage ; ceci
permet d'arreter les services dans l'ordre inverse de leur demarrage.
Bien sur, en consequence, le numero de sequence pour l'arret est de 80.
Une valeur par defaut de 20, comme utilisee par update-rc.d, est un
vieux bogue qui ne peut etre corriger sans risquer de casser certaines
choses.
Au lieu de defaults, on peut indiquer les niveaux de fonctionnement
dans lesquels lancer ou arreter les services en utilisant une suite
explicite d'ensembles de parametres. Chacun de ces ensembles commence
par un parametre start ou stop de maniere a indiquer s'il faut creer
des liens de demarrage ou d'arret, puis un numero de sequence NN, suivi
par un ou plusieurs nombres indiquant les niveaux d'execution. Cet
ensemble de parametres se termine par un parametre << . >> (un simple
point).Quand, plutot que defaults, on utilise une determination
explicite, il faut habituellement un ensemble de demarrage start et un
ensemble d'arret stop. Quand on veut differents codes dans les
differents niveaux de fonctionnement, on peut specifier differents
ensembles de demarrage start ou differents ensembles d'arret stop. Dans
ce cas, et que le meme niveau d'execution est utilise dans plusieurs
ensembles, seul le dernier compte. Il n'est donc pas possible de creer
plusieurs liens start ou plusieurs liens stop pour un service dans le
repertoire d'un niveau d'execution.
Le script /etc/init.d/nom doit exister avant de lancer update-rc.d pour
creer les liens.
LA SUPPRESSION DES SCRIPTS
Quand on appelle update-rc.d avec l'option remove les liens dans les
repertoires /etc/rcniveau_ex'ecution.d qui pointent vers le script
/etc/init.d/nom sont supprimes. Ce script doit deja avoir ete supprime.
Si le script est toujours present, update-rc.d quittera avec un message
d'erreur.
On appelle habituellement update-rc.d dans le script << post-removal >>
d'un paquet et quand ce script a detecte que son premier parametre
etait purge. Tout fichier dans les repertoires /etc/rcrunlevel.d qui
n'est pas un lien symbolique vers le script /etc/init.d/name est
preserve.
D'ESACTIVATION DES LIENS DE D'EMARRAGE DES SCRIPTS D'INITIALISATION
Avec l'option disable [ S|2|3|4|5 ], update-rc.d modifie pour les
niveaux d'execution les liens existants vers le script /etc/init.d/nom
en renommant les liens de demarrage en liens d'arret avec un numero de
sequence egal a 100 moins le numero de sequence d'origine.
Avec l'option enable [ S|2|3|4|5 ], update-rc.d modifie pour les
niveaux d'execution les liens existants vers le script /etc/init.d/nom
en renommant les liens d'arret en liens de demarrage avec un numero de
sequence egal a 100 moins le numero de sequence actuel, revenant ainsi
au numero de sequence d'origine du script avant qu'il soit desactive.
Ces deux options ne fonctionnent qu'avec les niveaux d'execution S, 2,
3, 4 ou 5. Si aucun niveau d'execution n'est precise apres le mot cle
disable ou enable, le script essaiera de modifier des liens dans tous
les niveaux d'execution.
OPTIONS
-n Ne fait rien, montre seulement ce qui pourrait etre fait.
-f Forcer la suppression des liens meme si /etc/init.d/nom existe
encore.
EXEMPLES
Inserer des liens avec l'option << defaults >> :
update-rc.d foobar defaults
L'en-tete des dependances equivalent devrait avoir des dependances
de demarrage et d'arret pour $remote_fs et $syslog, et devrait demarrer
dans les niveaux d'execution 2 a 5 et s'arreter dans les niveaux 0, 1 et 6.
La meme commande, avec une determination explicite utilisant les
ensembles de parametres :
update-rc.d foobar start 20 2 3 4 5 . stop 20 0 1 6 .
Une commande plus courante utilisant un ensemble de parametres
explicites :
update-rc.d foobar start 30 2 3 4 5 . stop 70 0 1 6 .
Inserer des liens dans les niveaux d'execution par defaut quand B
necessite A
update-rc.d script_A defaults 80 20
update-rc.d script_B defaults 90 10
Inserer un lien pour un service qui (a priori) ne sera necessaire pour
aucun autre demon
update-rc.d app_haut_niveau defaults 98 02
Inserer des liens pour un script qui necessite des services demarrant
ou s'arretant au numero de sequence 20
update-rc.d script_dependant_services_20 defaults 21 19
Retirer tous les liens d'un script (en supposant que foobar a deja ete
supprime) :
update-rc.d foobar remove
Exemple de desactivation d'un service :
update-rc.d -f foobar remove
update-rc.d foobar stop 20 2 3 4 5 .
Exemple de commande pour installer un script systeme d'initialisation
et d'arret :
update-rc.d foobar start 45 S . stop 31 0 6 .
Exemple de commande pour desactiver un script systeme d'initialisation
et d'arret :
update-rc.d -f foobar remove
update-rc.d foobar stop 45 S .
BOGUES
Consultez http://bugs.debian.org/sysv-rc.
FICHIERS
/etc/init.d/
Le repertoire qui contient en fait les scripts d'initialisation.
/etc/rc?.d/
Le repertoire qui contient les liens utilises par init et geres
par update-rc.d.
/etc/init.d/skeleton
Modele pour l'ecriture des scripts d'init.d.
/var/lib/sysv-rc/legacy-bootsequence
Drapeau indiquant que la machine utilise le mode d'origine pour
l'ordre des scripts de demarrage.
VOIR AUSSI
la charte Debian,
/etc/init.d/skeleton,
insserv(8), sysv-rc-conf(8), bum(8), init(8).
TRADUCTION
La traduction de cette page de manuel est maintenue par les membres de
la liste <debian-l10n-french AT lists DOT debian DOT org>. Veuillez
signaler toute erreur de traduction par un rapport de bogue sur le
paquet manpages-fr-extra.