6.56. Sysvinit-2.86

Das Sysvinit Paket enhält Programme, mit denen Sie das Starten, Ausführen und Beenden des Systems kontrollieren können.

Geschätzte Kompilierzeit: 0.1 SBU
Ungefähr benötigter Festplattenplatz: 1012 KB
Die Installation ist abhängig von: Binutils, Coreutils, GCC, Glibc und Make

6.56.1. Installation von Sysvinit

Wenn Runlevel gewechselt werden (zum Beispiel beim Herunterfahren des Systems), sendet init Signale an alle Programme, die es gestartet hat. Init gibt „Sending processes the TERM signal“ auf dem Bildschirm aus. Dieser Text suggeriert, das init Signale an alle Prozesse sendet. Das ist so aber nicht korrekt, denn es geht hier nur um Prozesse, die von init gestartet wurden. Um diese Verwirrung zu vermeiden, können Sie die Quellen so modifizieren, dass es sich besser liest: „Sending processes started by init the TERM signal“:

sed -i 's@Sending processes@& started by init@g' \
    src/init.c

Kompilieren Sie das Paket:

make -C src

Installieren Sie das Paket:

make -C src install

6.56.2. Einrichten von Sysvinit

Erstellen Sie die Datei /etc/inittab:

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

id:3:initdefault:

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

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

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

su:S016:once:/sbin/sulogin

1:2345:respawn:/sbin/agetty -I '\033(K' tty1 9600
2:2345:respawn:/sbin/agetty -I '\033(K' tty2 9600
3:2345:respawn:/sbin/agetty -I '\033(K' tty3 9600
4:2345:respawn:/sbin/agetty -I '\033(K' tty4 9600
5:2345:respawn:/sbin/agetty -I '\033(K' tty5 9600
6:2345:respawn:/sbin/agetty -I '\033(K' tty6 9600

# End /etc/inittab
EOF

Der Parameter -I '\033(K' bewirkt, dass agetty als erstes diese Escape-Sequenz an das Terminal sendet. Mit dieser Sequenz wird das Terminal auf einen benutzerdefinierten Zeichensatz umgeschaltet, der dann mit setfont eingestellt werden kann. Die Konsole-Initskripte aus den LFS-Bootskripten benutzen setfont während dem Start. Das Senden dieser Sequenz ist für Personen wichtig, die nicht-ISO 8859-1 Bildschirmschriften benutzen und hat keinen Effekt für englischsprachige Benutzer.

6.56.3. Inhalt von Sysvinit

Installierte Programme: halt, init, killall5, last, lastb (Link auf last), mesg, pidof (Link auf killall5), poweroff (Link auf halt), reboot (Link auf halt), runlevel, shutdown, sulogin, telinit (Link auf init), utmpdump und wall

Kurze Beschreibungen

halt

Ruft üblicherweise shutdown mit dem Parameter -h auf, außer wenn der aktuelle Runlevel 0 ist, dann teilt es dem Kernel mit, das System anzuhalten. Vorher vermerkt es in /var/log/wtmp, dass das System nun heruntergefahren wird.

init

Der erste gestartete Prozess nachdem der Kernel die Hardware initialisiert hat. Init übernimmt den Bootvorgang und startet alle anstehenden Programme.

killall5

Sendet ein Signal an alle Prozesse, außer denen in der eigenen Sitzung—so beendet es nicht die Programme, die das Skript ausführen welches es aufgerufen hat.

last

Zeigt, welcher Benutzer als letztes eingeloggt und ausgeloggt hat, indem es die Datei /var/log/wtmp durchsucht. Es kann auch Systemstarts und -stopps sowie Wechsel der Runlevel zeigen.

lastb

Zeigt die letzten fehlgeschlagenen Login-Versuche, die in /var/log/btmp protokolliert wurden.

mesg

Kontrolliert, welche anderen Benutzer Nachrichten auf das aktuelle Terminal senden können.

mountpoint

Prüft, ob der Ordner ein Mountpunkt ist.

pidof

Gibt die PIDs eines Programms aus.

poweroff

Weist den Kernel an, das System anzuhalten und den Computer auszuschalten. Siehe auch die Beschreibung zu halt.

reboot

Weist den Kernel an, das System neu zu starten. Siehe auch die Beschreibung zu halt.

runlevel

Zeigt den vorigen und den aktuellen Runlevel an. Die nötigen Informationen werden aus /var/run/utmp gelesen.

shutdown

Fährt das System sicher herunter, sendet entsprechende Signale an alle Prozesse und benachrichtig alle angemeldeten Benutzer.

sulogin

Erlaubt root, sich einzuloggen. Es wird normalerweise von init gestartet, wenn das System im Einbenutzermodus gestartet wurde.

telinit

Weist init an, in den angegebenen Runlevel zu wechseln.

utmpdump

Zeigt den Inhalt der angegebenen Logindatei in einem benutzerfreundlicheren Format an.

wall

Schreibt eine Nachricht an alle angemeldeten Benutzer.