Skip to content

Debian setzt auf systemd – und Ubuntu zieht mit

Der Streit um das „richtige“ Init-System ist schon so alt, dass nur die ältesten Ubuntu-Nutzer sich noch daran erinnern können. Mit Debian entscheidet sich ein weitere Projekt für systemd – und Ubuntu wird deswegen Upstart wohl aufgeben.

Geschichtliches

Vor langer Zeit, als Ubuntu noch in den Kinderschuhen steckte, wurde SysVinit als Init-System eingesetzt. Der Nachteil des Init-Systems war die eher bescheidene Geschwindigkeit, da der Systemstart sequentiell durchgeführt wurde. Bootvorgänge konnten deswegen länger dauern.

2006 führte Ubuntu-Entwickler Scott James Remnant Upstart ein, welches auf SysVinit basiert, den Bootvorgang aber durch ein ereignisgesteuertes System beschleunigt. Upstart war seit Ubuntu 6.10: „Edgy Eft“ in der Distribution enthalten, seit Ubuntu 9.10 „Karmic Koala“ sind die meisten Init-Skript umgestellt gewesen. Im März 20011 erschien Version 1.0.

Auch wenn es bereits im Juli 2009 Diskussionen mit Debian-Entwicklern gab, den Bootvorgang zu beschleunigen und auszubauen, hat Debian nie auf Upstart gewechselt. Einzig Red Hat Enterprise Linux und ChromeOS nutzen noch Upstart – wobei RHEL demnächst auch auf systemd wechseln wird.

Mit systemd wurde im April 2010 von Lennart Poettering eine Alternative zu Upstart vorgestellt, die ebenfalls abwärtskompatibel zu SysVinit ist. Das Init-System hatte mehr Erfolg als Upstart und so wurde SysVinit in Fedora, openSUSE, Mandriva und Arch Linux durch systemd abgelöst. Ubuntu hielt weiter an Upstart fest.

Debians Entscheidung

Mitte 2013 und vor allem im Oktober startete bei Debian die Diskussion, ob das zukünftige Init-System systemd oder Upstart werden solle. Canonical beobachtete die Diskussion, wollte aber bei Upstart bleiben.

Nach sehr langen und hitzigen Diskussionen unter den Debian-Entwicklern sollte Debians Technischer Ausschuss eine Entscheidung fällen, die Abstimmung ging aber unentschieden aus. Aufgrund dessen beschloss der Vorsitzende Bdale Garbee, dass Debian 8 „Jessie“ mit systemd ausgeliefert werden soll. Ob die Entscheidung final ist, ist noch nicht sicher, da ggf. die rund tausend Debian-Entwickler noch in einer „General Resolution“ für ein anderes Init-System stimmen können.

Ubuntus Reaktion

Nach der Bekanntgabe von Debians Entscheidung, meldet sich Mark Shuttleworth in seinem Blog zu Wort. Er dankte den Debian-Entwicklern für die Diskussion und will nun auch einen Wechsel in Ubuntu von Upstart zu systemd anregen. Debian ist die Codebasis für Ubuntu und somit solle man auf ein gemeinsames Init-System zugreifen.

Für die kommende Ubuntu-Version 14.04 „Trusty Tahr“, die eine LTS-Version ist, steht natürlich noch kein Wechsel an. Ubuntu will systemd in den Paketquellen anbieten, sobald es möglich ist.

Wenn es eine stabile Version in Debian gibt, die aus Sicht von Ubuntu die gleichen Möglichkeiten wie Upstart bietet, will man systemd als Standard übernehmen. Wann das der Fall ist, ist aber unklar, da es noch keinen Termin für Debian 8 gibt.

Links

Trackbacks

deesaster.org am : Wochenrückblick 07/2014

Vorschau anzeigen
Der Wochenrückblick lässt das Geschehen der vergangenen Woche rund um Ubuntu, Linux und Open Source Revue passieren. Rund um Ubuntu Ubuntu Developer Summit 14.03 Der nächste Ubuntu Developer Summit findet Mitte März vom 11.-13.03.2014 statt. Bisher gibt e

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Matthias am :

Schöner Artikel!
Wichtig ist jedoch, dass es bei upstart und insbesondere bei systemd nicht (nur) um einen möglichst schnellen Bootvorgang geht, sondern hauptsächlich um die Kontrolle der auf dem System laufenden Dienste. Systemd löst das sehr schön mittels cgroups, mit welchen sich Dienste hervorragend verfolgen lassen, egal wie viele Subprozesse sie erzeugen. SysVInit verliert da oftmals die Kontrolle.
Zudem enthält systemd nicht nur das Init-System sondern auch ettliche weitere dienste, die die Systemverwaltung vereinfachen.
Upstart hat ähnliche Mechanismen gehabt (wobei ptrace jetzt mehr ein Hack anstelle einer guten Lösung ist). Upstart hat jedoch auch einige Designschwächen gehabt, die systemd allesamt nicht hat, insofern ist die Entscheidung zu systemd für Debian ebenso wie für Ubuntu zu begrüßen.
Siehe auch: https://lwn.net/Articles/582585/

Dee am :

Danke für die Erklärung. Ich habe es aus zwei Gründen sehr vereinfacht dargestellt: 1. Damit es so gut wie jeder versteht. 2. Damit ich es verstehe. ;) Im Ernst: Der Init-Prozess ist nicht unbedingt mein Steckenpferd, was Linux angeht. Ich bin froh, dass ich so viel verstanden habe, um den Text da oben zu schreiben ohne mich nicht selbst zu verwirren.

Matthias am :

Der Grund warum ich das anmerke ist auch hauptsächlich, dass sobald man das Argument "mit systemd startet das system schneller" bringt, sofort Leute aus den Löchern gekrochen kommen, die meinen dass sie keine schnellen Bootzeiten brauchen und dass systemd dafür zu "bloated" ist.
Die systemd Entwickler haben aber an einigen Stellen absichtlich auf die schnellere lösung zugunsten der nachvollziehbareren verzichtet (systemd ist trotzdem verdammt schnell).
Alles in allem ist systemd eine sammlung von wekzeugen zur Kontrolle eines Linux-Systems (von login über prozess-starts, prozess-lebenszyklen und logging bis zu konfiguration und sandboxing)

imo am :

Schade das bei der ganzen Debatte OpenRC relativ wenig Beachtung geschenkt wurde. Ich finde es wäre die beste Lösung gewesen, da es die Einfachheit, die man von sysvinit kennt, beibehält.
Da ich aber beruflich auch schon seit einem Jahr mit systemd arbeite und es eigentlich nichts zu meckern gibt, denke ich das es auf jedenfall eine gute Entscheidung war.

Kommentar schreiben

Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
Formular-Optionen