SysVinit- und Upstart-Alternative Systemd vorgestellt

Systemd soll die Designschwächen anderer Init-Systeme für Linux-Systeme umgehen und orientiert sich in einigen Punkten an dem bei MacOS eingesetzten launchd.

In Pocket speichern vorlesen Druckansicht 9 Kommentare lesen
Lesezeit: 3 Min.
Von
  • Thorsten Leemhuis

Über den Blog-Eintrag "Rethinking PID 1" hat der durch seine Arbeit an Avahi und Pulseaudio bekannte Open-Source-Entwickler Lennart Poettering "Systemd" angekündigt – eine Alternative zu SysV-Init oder dem von vielen modernen Linux-Distributionen verwendeten Init-System Upstart, die beim Booten des Systems alle zum Betrieb nötigen Dinge und Dienste ausführt oder startet.

In dem sehr ausführlichen Blog-Eintrag erläutert Poettering Probleme aktueller Init-Systeme und erklärt, wie das noch sehr experimentelle und bislang lediglich via Git erhältliche Systemd es besser machen will. Damit der Systemstart möglichst schnell erfolge, dürfe das Init-System nur das unbedingt Nötigste ausführen und müsse so viele Aufgaben wie möglich parallel erledigen, um die Ressourcen effizient zu nutzen. Dienste sollten zudem erst starten, wenn sie benötigt werden – ähnlich wie beim (x)inetd, das Server-Dienste wie SSH, Telnet oder Webmin automatisch startet, wenn auf einem bestimmten Port zugriffen wird. Auch seien die vielen beim Start aktueller Linux-Distributionen ausgeführten Shell-Skripte ein Problem, denn die seien vergleichsweise langsam. Poettering erläutert ferner, warum ihm der Ansatz des derzeit von Fedora, OpenSuse und Ubuntu eingesetzte Upstart nicht gefällt; mehrfach positiv erwähnt er hingegen einige Eigenschaften des bei MacOS eingesetzten launchd.

Im folgenden beschreibt Poettering in seinem Blog-Eintrag die Funktionsweise des maßgeblich von ihm entwickelten Systemd; viele der ihm vorschwebenden Features seien bereits implementiert, einige weitere seien bereits in Arbeit. Testern offeriert er ein Qemu-Image mit einer modifizierten Vorabversion von Fedora 13, mit der man Systemd ausprobieren kann. In einer virtuellen Maschine würde Systemd das System drei Sekunden schneller starten als Upstart. Es seien aber nur sehr grobe, mit aktiviertem Debugging ermittelte Werte; zudem kämen nur die normalen LSB-Startskripte zum Aufruf vieler Dienste zum Einsatz, sodass viele der Konzepte von Systemd nicht zum Zuge kämen.

Der bei Red Hat beschäftigte Poettering stellt in der FAQ am Ende der Ankündigung klar, dass Systemd sein Freizeitprojekt sei. Er hat sich aber mit Entwicklern verschiedener Firmen abgesprochen – darunter auch dem bei Novell beschäftigten Kay Sievers, der durch seine Arbeit als Udev-Maintainer bekannt ist. Poettering und Sievers scheinen auf eine Aufnahme in Fedora und OpenSuse hinarbeiten zu wollen, wenn weitere Experimente mit Systemd zeigen, dass das Konzept tragfähig ist.

Der Hauptentwickler von Upstart, Scott James Remnant, kommentierte Systemd kurz nach dessen Vorstellung in seinem Blog. Dort räumt er ein, dass Upstart keineswegs perfekt sei und dass er einigen von Poettering aufgebrachten Kritikpunkten nicht widersprechen kann. Nun, da Ubuntu 10.04 freigegeben sei, will er sich Upstart wieder mehr widmen und einige der kritisierten Eigenschaften angehen. Es sei viel zu früh, um abschätzen zu können, welche der beiden Ansätze langfristig der bessere sei.

(thl)