man inittab (Formats) - format du fichier inittab utilisé dans le processus de démarrage des systèmes UNIX SYSTEM V et compatibles

NOM

inittab - format du fichier inittab utilisé dans le processus de démarrage des systèmes UNIX SYSTEM V et compatibles

DESCRIPTION

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 de fonctionnement (runlevels), chacun pouvant avoir ses propres processus à démarrer. Les niveaux de fonctionnement valides sont 0-6, ainsi que A, B et C pour des modes personnalisés. Typiquement, une entrée dans le fichier inittab a la forme suivante : id:niveaux:action:processus Les lignes commençant par le caractère « # » sont ignorées.

id
est une séquence unique de 1 à 4 caractères, identifiant une entrée dans inittab . Pour les versions des systèmes V compilées avec les vieilles bibliothèques libc5 (< 5.2.18) ou des bibliothèques au format a.out, la limite est de 2 caractères. Note : pour les programmes de connexion comme getty ou d'autres, le champ id doit être le numéro du tty correspondant à la console, par exemple 1 pour tty1. Certains antiques gestionnaires d'enregistrement de connexion supposent qu'il en est ainsi, même si je suis dans l'incapacité d'en nommer.
niveaux
liste des niveaux de fonctionnement pour lesquels l'action doit être réalisée.
action
décrit l'action à réaliser.
processus
spécifie la commande à exécuter. Si ce champ commence par le caractère « + », init n'enregistrera pas de connexion avec utmp et wtmp. Ceci est requis par certains gettys qui utilisent leur propre gestionnaire d'enregistrement de connexion. Il s'agit également d'une (mauvaise) habitude.

Le champ niveaux peut contenir plusieurs caractères indiquant différents niveaux de fonctionnement. Par exemple, 123 signifie que le processus sera exécuté dans les niveaux de fonctionnement 1, 2 et 3. Les niveaux pour les entrées ondemand peuvent contenir un A, B ou C. Les valeurs du champ niveaux de sysinit, boot, et bootwait sont ignorées.

Quand le niveau de fonctionnement est changé, tous les processus qui n'apparaissent pas dans le niveau spécifié sont tués, d'abord avec SIGTERM, puis avec SIGKILL.

Les actions valides pour le champ action sont :

respawn
Le processus est redémarré à chaque fois qu'il se termine (ex : getty).
wait
Le processus n'est démarré qu'une seule fois dans son niveau de fonctionnement et init attend qu'il se termine.
once
Le processus est exécuté lorsque le niveau de fonctionnement spécifié est appelé.
boot
Le processus est exécuté pendant le démarrage du système. Le champ niveaux est ignoré.
bootwait
Le processus est exécuté pendant le démarrage du système, et init attend que le processus se termine. Le champ niveaux est ignoré.
off
Ne fait rien.
ondemand
Un processus marqué dans un niveau de fonctionnement ondemand est exécuté à chaque fois que le niveau de fonctionnement ondemand est appelé. Cependant, aucun changement de niveau de fonctionnement ne survient. Les niveaux de fonctionnement pour ondemand sont « a », « b » et « c ».
initdefault
Une entrée initdefault indique le niveau de fonctionnement voulu une fois que le système a démarré. Si aucun n'existe, init demandera un niveau 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 est ignoré.
powerwait
Le processus est exécuté quand la machine est sur le point de s'éteindre. Init est normalement informé par un programme qui dialogue avec un UPS connecté à la machine. Init attend jusqu'à ce que le processus soit terminé avant de continuer.
powerfail
Idem que powerwait, mis à part qu'init n'attend pas la fin du processus avant de continuer.
powerokwait
Le processus est exécuté dès qu'init est informé que la machine 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é lorsqu'init reçoit le signal SIGINT. Cela signifie que quelqu'un sur la console système a tapé la combinaison de touches CTRL-ALT-DEL. Typiquement, on a voulu exécuter une sorte d'arrêt, soit pour démarrer en mode simple 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 (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 que Alt-FlècheHaut déclenche ce signal, utilisez ce qui suit dans votre carte de clavier : alt keycode 103 = KeyboardSignal

EXEMPLES

Voici un exemple de 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 terminaux tty1-tty4.

Un fichier inittab plus élaboré avec différents niveaux de fonctionnement (notez bien les commentaires) :

# Niveau de fonctionnement
id:2:initdefault:

# Initialisation du système si::sysinit:/etc/init.d/rcS

# Mode mono-utilisateur ~:S:wait:/sbin/sulogin

# /etc/init.d exécute les scripts S et K lors du # changement de niveau. # # Le niveau 0 concerne l'arrêt du système. # Le niveau 1 est en mode mono-utilisateur. # Les niveaux 2-5 sont en mode multiutilisateur. # Le niveau 6 est pour le redémarrage du système.

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

# Niveaux 2 et 3 : getty sur les consoles virtuelles # Niveau 3 : getty sur un terminal (ttyS0) # et le modem (ttyS1) 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). La traduction est de Danny (dannybrain@noos.fr) et Gérard Delafond (gerard@delafond.org) en novembre 2001.

VOIR AUSSI