Open Source im professionellen Einsatz
Linux-Magazin 10/2013
© Shariff Che'Lah, 123RF.com

© Shariff Che'Lah, 123RF.com

Von Sys-V-Init über Upstart zu Systemd

Gerangel am Start

Sys-V-Init startete die Prozesse von Linux mehr als ein Jahrzehnt lang als Einzelkämpfer. Doch heute lauert eine technisch versierte Generation von Initsystemen in den Startblöcken.

549

Viele Jahre lang startete der Linux-Kernel als erste Amtshandlung einen Prozess und stattete diesen mit der Prozess-ID 1 aus: Init. Der Startprozess warf zunächst einen Blick in die Datei »/etc/inittab« und schlurfte anschließend gemütlich durch die Runlevel des Sys-V-Init-Systems (Abbildung 1).

Abbildung 1: Init durchläuft im Sys-V-System verschiedene Runlevel, welche die Datei inittab festlegt, und führt jeweils einige Initskripte aus.

In jedem Runlevel startete Init, unterstützt von so genannten Initskripten, verschiedene Dienste und hörte erst damit auf, wenn es den anfangs anvisierten Runlevel erreicht hatte. Handelte es sich zum Beispiel um Debian und war das Ziel der Runlevel 1, saß der Benutzer am Ende vor einem Rechner ohne Netzwerk und grafischer Oberfläche, war aber in der Lage, lokale Anwendungen zu nutzen. Beim Herunterfahren des Rechners wurden die Dienste dann wieder gestoppt.

Von Simpleinit zu Sys-V-Init

Wie der Name schon andeutet, kam Sys-V-Init nicht aus dem luftleeren Raum, sondern orientierte sich am Runlevel-System von System-V, AT&Ts kommerziellem Unix-System von 1983. Miquel van Smoorenburg hatte Sys-V-Init 1992 für Minix portiert, der Däne Ørbæk entwickelte daraus eine Version für Linux, die im April 1992 in Version 1.0 von »admutil« debütierte [1].

Dabei war Sys-V-Init weder das erste noch das einzige Initsystem für Linux. Das verwendete zunächst Simpleinit [2], ein Init-basiertes System, das Ørbæk unter Mithilfe von Werner Almesberger entwickelt hatte. Es war etwas einfacher gestrickt als Sys-V-Init, weil es unter anderem keine Runlevel mitbrachte, und steckte im »poeigl« -Archiv.

Ende 1992, nach der Veröffentlichung von »admutil-1.4« , entspann sich im Usenet jedoch eine Diskussion [3] über das passende Initsystem. Ausgangspunkt waren Ørbæks Pläne, die Logout Records von dem Tool Getty schreiben zu lassen. Ein User wies darauf hin, dass man diesen Job in bester Unix-Manier wohl eher Init überlassen solle, und berichtete nebenbei von seinen guten Erfahrungen mit Sys-V-Init. Ørbæk willigte ein, Sys-V-Init zum Standard der nächsten Version seiner Werkzeugsammlung zu machen, Simpleinit sei mittlerweile ohnehin "zu groß" geworden.

Doch die Pläne änderten sich, weil der Sys-V-Init-Autor Miquel van Smoorenburg im Dezember 1992 die weitere Entwicklung des Tools unter Linux übernahm und Version 2.0 veröffentlichte [4]. Er hatte sich inzwischen einen 386er besorgt, Linux installiert und baute nun den Code von Sys-V-Init komplett um. Die ursprüngliche Minix-Unterstützung ging dabei verloren, dafür landete Sys-V-Init bald danach im Kernel und avancierte auch zum Bootsystem für Softlanding Linux, der ersten Linux-Distribution überhaupt. Smoorenburg betreute Sys-V-Init zwölf Jahre lang, bis er das Projekt 2004 einstellte.

Rückzugsgefechte

Smoorenburg ging, zurück blieb ein verwaistes Projekt mit Versionsnummer 2.86, das dennoch weiter zum Einsatz kam. Der Debian-Entwickler Petter Reinholdtsen kümmerte sich inoffiziell um Bugreports für Sys-V-Init, brachte Patches ein und veröffentlichte gepatchte Varianten der Version, die auch Ubuntu verwendete.

Fünf Jahre lang hielt der für Reinholdtsen frustrierende Zustand an, bevor er im Juli 2009 das Projekt zusammen mit einigen Helfern übernahm [5], sich kurzerhand zum neuen Upstream erklärte und die neue Version 2.87dsf von Sys-V-Init veröffentlichte. Mit dem Wechsel des Betreuers ging auch ein Wechsel des Repository einher: Seitdem hostet Savannah [6] den Code. Reinholdtsen sah durchaus die Ironie bei dieser Übernahme, denn einige Distributionen dachten zu diesem Zeitpunkt bereits über einen Wechsel zu Ubuntus neuem Initsystem nach.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.