19.2 Ubuntu und die Dienste
19.2.1 Multitasking und Multiuser
Ein Diener vieler Herrn – diese Aussage gilt für unixoide Betriebssysteme in mehrerlei Hinsicht. Der wesentliche Punkt:
In einer Standardinstallation können viele verschiedene Benutzer zur gleichen Zeit mit dem System arbeiten.
Multitasking bedeutet, dass das System mehrere Aufgaben scheinbar gleichzeitig erledigt. Scheinbar deswegen, weil es dem Benutzer nur so erscheint: In der Realität teilen sich mehrere Anwendungen denselben Prozessor, der jeder Applikation ein Portiönchen seiner wertvollen Zeit zubilligt. Die anstehenden Aufgaben werden dennoch nacheinander abgearbeitet; infolge der sehr kurzen Zeitfenster entsteht beim Anwender allerdings der Eindruck der Gleichzeitigkeit.
In puncto Multitasking ist Linux perfekt und stellt Windows in den Schatten. Sie wollen einen Beweis? Dann starten Sie unter einer aktuellen Windows-Oberfläche wie z. B. XP ein Browserfenster, rufen eine graphiklastige Seite im Internet auf und drucken diese aus. Während des Drucks versuchen Sie nun, Ihre E-Mails zu checken. Resultat: Das System wird durch den Ausdruck komplett überfordert und hat keine Zeit mehr, sich um andere Aufgaben zu kümmern. Unter Linux gibt es derartige Probleme nicht, da das Multitaskingkonzept dort konsequenter umgesetzt wurde.
19.2.2 Runlevel
Und dann wären da noch die Runlevel: Während des Systemstarts werden verschiedene Stufen durchlaufen, für die jeweils Skripte abgearbeitet werden. Diese befinden sich im Systemverzeichnis /etc/init.d. Die Reihenfolge, in der die Skripte in den einzelnen Stufen (Runleveln) durchlaufen werden, ist in Unterverzeichnissen /etc/rc.Xd abgelegt. Im Einzelnen unterscheidet man bei Debian-basierten Systemen die folgenden besonderen Runlevel:
- Runlevel 0
-
- Anhalten des Systems bzw. kontrolliertes Herunterfahren in den Systemhalt.
- Runlevel 1
-
- Hierbei handelt es sich um den Einzelbenutzermodus, d. h., es kann maximal ein Benutzer mit dem System arbeiten.
- Runlevel 3
-
- Multiusermodus mit Netzwerkfunktionalität.
- Runlevel 5
-
- Voller graphischer Runlevel mit Multiuser- sowie Netzwerkfähigkeiten.
- Runlevel 6
-
- Reboot des Systems.
Der Übergang in die einzelnen Runlevel kann vom Superuser unter Verwendung des Kommandos init herbeigeführt werden. Loggen Sie sich zu diesem Zweck einmal als Root ein und versuchen Sie, das System von der Konsole aus neu zu starten:
user$ sudo init 6
Nun können Sie auch einmal versuchen, in den Singleuser-Modus via init 2 zu wechseln: Dabei öffnet sich eine Linux-Konsole. Apropos Kommandozeile: Im Multiusermodus können Sie jederzeit mittels (Strg) + (Alt) + (Fx) auf eine Konsole Ihrer Wahl im textbasierten Modus wechseln. (F1), (F2) und (F3) sind Standardkonsolen, (F5) ist die Graphikkonsole. Das ersetzt quasi mehrere Fenster, falls Sie sich im Runlevel 1 oder 3 befinden.
19.2.3 Deaktivieren von Diensten
Das Aktivieren/Deaktivieren von Diensten geht sehr bequem mit dem Befehl update-rc.d.
Der folgende Befehl aktiviert z. B. den Dienst postfix:
user$ sudo update-rc.d postfix defaults
Entfernen lässt sich der Dienst nun mit:
user$ sudo update-rc.d postfix remove
Den Dienst sollte man jetzt von Hand stoppen:
user$ sudo /etc/init.d/postfix stop
da er anderenfalls beim nächsten Herunterfahren des Systems nicht sauber beendet wird. Die Links zur Skriptdatei von Postfix werden beim Starten und Herunterfahren des Systems nicht mehr benutzt.
GUIs zum Deaktivieren von Diensten
Es gibt auch graphische Benutzeroberflächen (GUI – Graphical User Interface) zum Deaktivieren von Diensten. Eine Konsolen-GUI ist rcconf. Sie bekommen rcconf aus den Ubuntu-Quellen mittels:
user$ sudo apt-get install rcconf