www.linuxmaterial.deRunlevel

Durch Zusammenfassen verschiedener Dienste und Funktionen zu einem Runlevel kann einfach die Rolle und der Zustand eines Rechners definiert werden. (Beispiele: Runlevel 1 = Single User Modus, nur zur Administration durch den Systemverwalter, oder Einsatz als Mailserver ohne eigene Nutzerverwaltung etc.). Die Runlevel sind in der Datei /etc/inittab definiert.

Die einzelnen Definitionen unterscheiden sich also nur dadurch, welche Dienste gestartet werden. Das Starten und Stoppen (beim Wechsel des Runlevels ) wird durch eine Verkünpfung (Softlink) zum eigentlichem Skript im Verzeichnis /etc/inid.d/rc[RUNLEVEL].d festgelegt. Die Skripten selbst befinden sich im übergeordneten Verzeichnis init.d. Beispiel:

lrwxrwxrwx 1 root root 10 Nov 25 21:00 S05network -> ../network

Beim Starten werden alle Einträge mit S in der Reihenfolge der darauf folgenden Zahlen abgearbeitet. Beim Stoppen bzw. Verlassen eines Runlevels werden alle Einträge mit K (Kill) in Reihenfolge der darauf folgenden Zahlen abgearbeitet. Der Befehl init ruft Einträge mit "S" mit der Option start und Einträge mit "K" mit stop auf.

S/K
Start oder Stop
Reihenfolge
[00..99]
Name des
Skripts
S 05 network*1

K 10 network*1

Ein Initskript sollte zumindest die Optionen start, stop und status verarbeiten. Ein Beispielskript das auch als Grundlage für eigene Initskripte verwendet werden kann ist bei Suse unter /etc/init.d/skeleton zu finden.

Optionen für die durch diese Skripte gesteuerten Dienste werden in den, den Dienstnamen tragenden Dateien unter /etc/sysconfig eingetragen. *2


*1 Dieser Eintrag im Verzeichnis rc3.d bedeutet: Beim Betreten dieses Runlevels wird das Script ../network als fünftes gestartet.

*2 ..und hier wird das Netzwerk gestoppt.

*3 Siehe auch kpresenter-Präentation