Anders starten
Verschiedene Init-Systeme in der Praxis
Die MehrzahI der Distributionen verwendet heute Systemd als initialen Betriebssystemprozess und für viele andere Dinge. Es besteht jedoch weiter die Möglichkeit, ein Linux-System auch mit DesktopUmgebung mit einem anderen Init-System zu betreiben. Allerdings schränkt eine solche Entscheidung die Auswahl an Distributionen ein (siehe Kasten Init-Systeme in Distributionen). Der Schwerpunkt dieses Artikels liegt auf Debian und Devuan, die der Autor selbst einsetzt.
Gründe für den Wechsel
Dem Autor ging es bei der Suche nach Alternativen um eine Mischung aus Unzufriedenheit mit dem Standardverhalten von Systemd, dem Umfang der im Systemd-Hauptbinärprogramm implementierten Funktionen und seiner damit verbundenen Größe im Vergleich zum wesentlich kompakteren SysVinit oder Runit. Weiterhin störte ihn das Verhalten einiger Systemd-Entwickler bei Antworten auf Fehlerberichte, insbesondere auch in Bezug auf Sicherheitslücken. So umfasst das Systemd-Binary in /lib/ systemd/systemd/ mittlerweile über 1 MByte, während /sbin/init in Devuan „Ceres“ mit knapp 56 KByte auskommt und /sbin/runit gar nur mit 26 KByte. Mit der Codegröße steigt die Anzahl der potenziell enthaltenen Fehler für den als PID 1 laufenden Prozess. Server lassen sich mit alternativen Init-Systemen zudem ohne D-Bus betreiben, insofern es nicht andere Dienste erfordern.
PID 1: Das Kürzel PID bezeichnet den Process Identifier (Prozess-ID) eines Programms. Dieser eindeutige Schlüssel ändert sich während der Laufzeit nicht mehr. Der Init-Prozess mit der PID 1 startet alle weiteren Prozesse.
Sicherlich lassen sich fürs Booten unkritische Dateisysteme in der /etc/fstab mit nofail markieren. Wenn Systemd im Rettungsmodus aber aufgrund eines Fehlers beim Einhängen von Dateisystemen oder dem Aktivieren des Auslagerungsspeichers keinen SSH-Dienst startet, obwohl das problemlos möglich wäre, dann stellt sich die Frage: Besitzt das formal korrekte Booten des Systems tatsächlich mehr Relevanz als das Faktum, dass es überhaupt startet ? Das soll an dieser Stelle genügen – verschiedene Argumente pro und kontra waren ja in der Vergangenheit oft Teil ebenso langer wie hitziger Diskussionen.
Benötigte Funktionen
Ein Überblick über die verschiedenen Init-Systeme gibt eine Orientierungshilfe zu den möglichen Alternativen. Wichtig dabei: Bei Systemd handelt es sich mittlerweile um viel mehr als nur ein Init-System. Auch laut dem Entwickler des S6-Init-Systems, Laurent Bercot, besteht ein Init-System aus mehreren Teilen. Es umfasst neben dem eigentlichen Init-Programm, zum Beispiel /sbin/init, noch
• das Programm, das
Sie lesen eine Vorschau, starten Sie ein Abonnement, um mehr zu lesen.
Starten Sie Ihre kostenlosen 30 Tage