Runlevel
Viele Betriebssysteme von Computern durchlaufen beim Start (Booten) mehrere abgestufte Systemzustände, die als Runlevel bezeichnet werden. Jedem Runlevel sind bestimmte System-Dienste zugeordnet, die beim Booten als Prozesse in wohldefinierter Reihenfolge innerhalb des Betriebssystems gestartet werden. Auf diese Weise werden Systemressourcen des Computers stufenweise in Betrieb genommen. Bei Beendigung des Betriebssystems (Shutdown) werden die Runlevel in umgekehrter Reihenfolge durchlaufen, die laufenden Prozesse werden stufenweise beendet bis der Computer ausgeschaltet werden kann. Daneben kann auch direkter Wechsel von einem Runlevel in einen zweiten erfolgen.
Runlevel kennt man vor allem aus den unterschiedlichen Unix-Systemen wie Solaris, Linux oder AIX. Doch auch in Windows entsprechen die Startoptionen Abgesicherter Modus, Abgesicherter Modus mit Netzwerk oder Windows normal Starten im Windows-Bootmenü jeweils genau einem Runlevel.
Idee der unterschiedlichen Runlevel ist es, abgestufte Sicherheitsstufen bereitzustellen, in der nur bestimmte Systemprozesse aktiv sind. Dies ist wichtig, falls beispielsweise ein System von Computerviren befallen ist und ohne Netzwerk-Anbindung laufen soll.
Beispiel Linux
Am Beispiel des Betriebssystems Linux soll das Konzept von Runleveln verdeutlicht werden:
Alle System-Dienste, die innerhalb eines bestimmten Runlevels gestartet werden sollen, werden in der Datei /etc/inittab festgelegt. Bei Initialisierung eines Runlevels (Wechsel zu einem höheren Runlevel) werden diese Dienste automatisch gestartet. Umgekehrt werden bei Beendigung eines Runlevels die Prozesse automatisch gestoppt und Systemressourcen (Hauptspeicher, Ports, etc.) freigegeben.
Für die einzelnen Runlevels gelten die folgenden Definitionen:
Runlevel 0 Shutdown. Alle Netzverbindungen werden geschlossen, Dateipuffer werden geschrieben, Partitionen umounted...
Runlevel S Niedrigster Systemzustand, in dem ausschließlich Systemressourcen wie Festplatten oder Dateisysteme aktiv sind.
Runlevel 1 Einzelnutzerbetrieb ohne Netzwerk mit ausschließlich lokalen Ressourcen.
Runlevel 2 Lokaler Mehrnutzerbetrieb ohne Netzwerk mit ausschließlich lokalen Ressourcen.
Unter einigen Linuxdistributionen (z.B. Debian) wird in Runlevel 2 auch das Netzwerk konfiguriert.
Runlevel 3 Netzwerkbetrieb, über das Netzwerk erreichbare Ressourcen sind nutzbar, eine grafische Oberfläche steht nicht zur Verfügung. Firewalls sollten aktiviert werden.
Runlevel 4 Ist normalerweise nicht definiert. Kann aber für diverse Dienste genutzt werden.
Runlevel 5 wie 3, zusätzlich wird die grafische Oberfläche bereitgestellt.
Runlevel 6 Reboot. Alle Netzverbindungen werden geschlossen, Dateipuffer werden geschrieben, Partitionen umounted...
Beispiel Solaris
Hier ein weiteres Beispiel, diesmal des Betriebssystems Solaris. Es soll das Konzept von Runleveln verdeutlichen, aber auch Unterschiede zu Linux oder anderen Systemen zeigen:
Alle System-Dienste, werden ebenfalls in der Datei /etc/inittab festgelegt.
Für die einzelnen Runlevels gelten unter Solaris die folgenden Definitionen:
Runlevel 0
Shutdown-Runlevel
Runlevel 1
Administrations-Runlevel (siehe Linux)
Runlevel 2
Multi-User-Runlevel (siehe Linux)
Runlevel 3
Multi-User-Runlevel mit Netzwerk (siehe Linux)
Runlevel 4
Benutzerdefinierter Runlevel (siehe Linux)
Runlevel 5
Poweroff-Runlevel; ähnlich wie Runlevel, doch es wird das Netzteil abgeschaltet, sofern dies unterstützt wird.
Runlevel 6
Reboot-Runlevel (siehe Linux)
Runlevel S
Single-User-Runlevel; ähnlich wie Runlevel 1, doch es werden nur die nötigsten Dateisysteme gemountet ("/" und "/usr") um Veränderungen am System während der Wartungsarbeiten zu vermeiden
Runlevel a,b,c
Spezielle Runlevel; diese werden zusätzlich zu den aktiven Runleveln gestartet
Runlevel Q
Dieses Runlevel dient dem erneutes Einlesen der /etc/inittab, um Änderungen ohne Reboot zu verwirklichen.
