7.7. Sysvinit-2.88dsf

Le paquet Sysvinit contient des programmes de contrôle du démarrage, de l'exécution et de l'arrêt de votre système.

7.7.1. Installation de Sysvinit

Appliquez un correctif pour éviter l'installation de programmes inutiles et permettre à Sysvinit d'être installé dans /tools :

patch -Np1 -i ../sysvinit-2.88dsf-tools_updates-1.patch

Compilez le paquet :

make -C src clobber
make -C src CC="${CC}"

Installez le paquet :

make -C src ROOT=/tools install

7.7.2. Configuration de Sysvinit

Créez un nouveau /tools/etc/inittab en exécutant ce qui suit :

cat > /tools/etc/inittab << "EOF"
# Begin /tools/etc/inittab

id:3:initdefault:

si::sysinit:/tools/etc/rc.d/init.d/rc sysinit

l0:0:wait:/tools/etc/rc.d/init.d/rc 0
l1:S1:wait:/tools/etc/rc.d/init.d/rc 1
l2:2:wait:/tools/etc/rc.d/init.d/rc 2
l3:3:wait:/tools/etc/rc.d/init.d/rc 3
l4:4:wait:/tools/etc/rc.d/init.d/rc 4
l5:5:wait:/tools/etc/rc.d/init.d/rc 5
l6:6:wait:/tools/etc/rc.d/init.d/rc 6

ca:12345:ctrlaltdel:/tools/sbin/shutdown -t1 -a -r now

su:S016:once:/tools/sbin/sulogin

EOF

La commande suivante ajoute les terminaux virtuels standards à /tools/etc/inittab. Si votre système n'a qu'une console série, sautez la commande suivante :

cat >> /tools/etc/inittab << "EOF"
1:2345:respawn:/tools/sbin/agetty --noclear -I '\033(K' tty1 9600
2:2345:respawn:/tools/sbin/agetty --noclear -I '\033(K' tty2 9600
3:2345:respawn:/tools/sbin/agetty --noclear -I '\033(K' tty3 9600
4:2345:respawn:/tools/sbin/agetty --noclear -I '\033(K' tty4 9600
5:2345:respawn:/tools/sbin/agetty --noclear -I '\033(K' tty5 9600
6:2345:respawn:/tools/sbin/agetty --noclear -I '\033(K' tty6 9600

EOF

Si votre système a une console en série, lancez la commande suivante pour ajouter l'entrée à /tools/etc/inittab.

cat >> /tools/etc/inittab << "EOF"
c0:12345:respawn:/tools/sbin/agetty --noclear 115200 ttyS0 vt100

EOF

Enfin, ajoutez une fin de ligne à /tools/etc/inittab.

cat >> /tools/etc/inittab << "EOF"
# End /tools/etc/inittab
EOF

L'option -l '\033(K' dit à agetty d'envoyer cette séquence d'échappement au terminal avant de faire quoi que ce soit d'autre. Cette séquence change le jeu de caractère de la console en un jeu défini par l'utilisateur, qui peut être modifié en lançant le programme setfont. Envoyer cette séquence est nécessaire pour les gens qui utilisent une police non ISO-8859-1, mais cela n'affecte pas les locuteurs anglais.

7.7.3. Contenu de Sysvinit

Programmes installés: bootlogd, fstab-decode, halt, init, killall5, poweroff (lien vers halt), reboot (lien vers halt), runlevel, shutdown et telinit (lien vers init)

Descriptions courtes

bootlogd

Enregistre les messages de démarrage dans un fichier de log

fstab-decode

Lance une commande avec des arguments encodés un fstab

halt

Invoque shutdown normalement avec l'option -h, sauf lorsqu'il se trouve déjà au niveau d'exécution 0, où il dit alors au noyau d'éteindre le système ; il note dans le fichier /var/log/wtmp que le système est en train d'être éteint.

init

Le premier processus à être démarré lorsque le noyau a initialisé le matériel et qui prend la suite du processus de démarrage et démarre tous les processus qu'il est programmé pour

killall5

Envoie un signal à tous les processus, sauf les processus dans sa propre session pour qu'il ne tue pas le shell qui lance le script qui l'a appelé

poweroff

Dit au noyau d'arrêter le système et d'éteindre l'ordinateur (voir halt)

reboot

Dit au noyau de redémarrer le système (voir halt)

runlevel

Rapporte les niveaux d'exécutions précédents et actuels, comme noté dans l'enregistrement du dernier niveau d'exécution dans /run/utmp

shutdown

Éteint le système d'une manière sécurisée, en signalant tous les processus et en notifiant tous les utilisateurs connectés

telinit

Dit à init vers quel niveau d'exécution changer