NOM
inittab - Format du fichier inittab utilisé dans le processus de
démarrage des systèmes UNIX Système V et compatibles.
Le fichier inittab décrit l’ensemble des processus qui doivent être
lancés au démarrage du système et dans d’autres circonstances (par
exemple, /etc/init.d/boot, /etc/init.d/rc, gettys...). Le programme
init(8) distingue différents niveaux dexcution (runlevel), chacun
pouvant avoir ses propres processus à démarrer. Les niveaux d’exécution
valables sont 0-6, et A, B, C pour des niveaux personnalisés.
Typiquement, une entrée dans le fichier inittab a la forme suivante :
id:niveaux_excution:action:processus
Les lignes commençant par le caractère « # » sont ignorées.
id Séquence unique de 1 à 4 caractères qui identifient une entrée
dans inittab (pour les versions de sysvinit compilées avec les
anciennes bibliothèques libc5 (< 5.2.18) ou a.out, la limite est
de 2 caractères).
Remarque : pour les programmes de login comme les gettys ou
d’autres, le champ id doit être le numéro du tty correspondant à
la console, par exemple 1 pour tty1. Des anciens programmes de
gestion des connexions peuvent également se baser là-dessus,
même si je n’en ai pas le souvenir.
niveaux_excution
Liste des niveaux d’exécution pour lesquels l’action doit être
faite.
action Description de l’action à faire.
processus
Commande à exécuter. Si ce champ commence par le caractère
« + », init n’enregistrera pas les connexions dans utmp et wtmp.
Ceci est requis par getty qui utilise son propre gestionnaire de
utmp ou wtmp. Ceci est également un bogue qui reste pour des
raisons historiques.
Le champ niveaux_excution peut contenir plusieurs caractères indiquant
différents niveaux d’exécution. Par exemple, 123 signifie que le
processus sera exécuté dans les niveaux d’exécution 1, 2 et 3. Les
niveaux dexcution pour les entrées ondemand peuvent contenir un A, B
ou C. Les champs niveaux_excution des entrées sysinit, boot et
bootwait sont ignorés.
Quand le niveau d’exécution est changé, tous les processus qui ne sont
pas spécifiés démarrés dans ce nouveau niveau d’exécution sont tués,
d’abord avec SIGTERM, puis avec SIGKILL.
Les actions valables pour le champ action sont :
respawn
Le processus est redémarré à chaque fois qu’il se termine (par
exemple : getty).
wait Le processus n’est démarré qu’une seul fois, lors de l’entrée
dans le niveau d’exécution et init attend qu’il se termine.
once Le processus est exécuté une seule fois, lors de l’entrée dans
le niveau d’exécution.
boot Le processus est exécuté pendant le démarrage du système. Le
champ niveaux_excution est ignoré.
bootwait
Le processus est exécuté pendant le démarrage du système, et
init attend que le processus se termine (par exemple : /etc/rc).
Le champ niveaux_excution est ignoré.
off Ne fait rien.
ondemand
Un processus marqué dans un niveau d’exécution ondemand est
exécuté à chaque fois que le niveau d’exécution ondemand est
appelé. Cependant, aucun changement de niveau d’exécution ne
survient (les modes de démarrage pour ondemand sont « a », « b »
et « c »).
initdefault
Une entrée initdefault indique qu’on entrera dans ce niveau
d’exécution une fois le système sera effectivement opérationnel.
Si aucun n’existe, init demandera un niveau d’exécution sur la
console. Le champ processus est ignoré.
sysinit
Le processus est exécuté pendant le démarrage du système. Il est
exécuté avant les entrées boot ou bootwait. Le champ
niveaux_excution est ignoré.
powerwait
Le processus est exécuté quand la machine est sur le point de
s’éteindre. Init est normalement informé de ceci par un
programme qui discute avec un UPS connecté à la machine. Init
attend jusqu’à ce que le processus soit terminé avant de
continuer.
powerfail
Comme powerwait, mis à part que init n’attend pas la fin du
processus avant de continuer.
powerokwait
Le processus est exécuté dès que init est informé que
l’alimentation de est remise en route.
powerfailnow
Ce processus sera exécuté quand init est informé que la batterie
de l’onduleur externe est presque vide et que la tension faiblit
(à condition que l’onduleur et le processus de surveillance
soient capables de détecter cette condition).
ctrlaltdel
Le processus est exécuté lorsque init reçoit le signal SIGINT.
Cela signifie que quelqu’un dans la console système a taper la
combinaison de touches CTRL-ALT-SUPPR. Typiquement, on a voulu
exécuter une sorte d’arrêt, soit pour démarrer en mode
mono-utilisateur, soit pour redémarrer la machine.
kbrequest
Le processus sera exécuté quand init reçoit un signal du
gestionnaire de clavier qu’une combinaison spéciale de touches a
été actionnée sur le clavier de la console.
La documentation pour cette fonction n’est pas encore complète ;
il est possible de trouver de la documentation supplémentaire
dans le paquet kbd-x.xx paquets (le plus récent était kbd-0.94
au moment où ces lignes sont écrites). Vous pouvez affecter des
combinaisons de touches à l’action « KeyboardSignal ». Par
exemple, pour affecter Alt-FlècheHaut pour cet usage, utilisez
ce qui suit dans votre fichier keymaps :
alt keycode 103 = KeyboardSignal
EXEMPLES
Voici un exemple d’un fichier inittab qui ressemble à un ancien fichier
inittab sous linux :
# inittab for Linux
id:1:initdefault:
rc::bootwait:/etc/rc
1:1:respawn:/etc/getty 9600 tty1
2:1:respawn:/etc/getty 9600 tty2
3:1:respawn:/etc/getty 9600 tty3
4:1:respawn:/etc/getty 9600 tty4
Ce fichier inittab exécute /etc/rc pendant le démarrage du système et
démarre getty sur les tty 1 à 4.
Un fichier inittab plus élaboré avec différents niveaux d’exécution
(notez bien les commentaires) :
# Runlevel à démarrer
id:2:initdefault:
# Script de configuration / initialisation du système au démarrage.
si::sysinit:/etc/init.d/rcS
# Que faire dans le mode mono-utilisateur.
~:S:wait:/sbin/sulogin
# /etc/init.d exécute les scripts S et K pour les changements
# de niveau d’exécution.
#
# Le niveau 0 est pour l’arrêt.
# Le niveau 1 est pour le mode mono-utilisateur.
# Les niveaux 2 à 5 correspondent aux niveaux multi-utilisateurs.
# Le niveau 6 correspond aux redémarrage.
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Que faire du « salut à 3 doigts ».
ca::ctrlaltdel:/sbin/shutdown -t1 -h now
# niveau d’exécution 2,3 : getty sur les consoles virtuelles
# niveau d’exécution 3 : getty sur le terminal (ttyS0) et
# sur le port modem.
1:23:respawn:/sbin/getty tty1 VC linux
2:23:respawn:/sbin/getty tty2 VC linux
3:23:respawn:/sbin/getty tty3 VC linux
4:23:respawn:/sbin/getty tty4 VC linux
S0:3:respawn:/sbin/getty -L 9600 ttyS0 vt320
S1:3:respawn:/sbin/mgetty -x0 -D ttyS1
FICHIERS
/etc/inittab
AUTEUR
Init a été écrit par Miquel van Smoorenburg (miquels@cistron.nl). Cette
page de manuel a été écrite par Sebastian Lederer
(lederer@francium.informatik.uni-bonn.de) et modifiée par Michael
Haardt (u31b3hs@pool.informatik.rwth-aachen.de).
VOIR AUSSI
init(8), telinit(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.
4 décembre 2001