Linux-Dämonen rufen und loswerden: Upstart versus runit

Wer bereits Fedora Core 10 (FC10) installiert hat, wird vielleicht festgestellt haben, dass diese Version mit Ubuntus Upstart ausgestattet ist, einem Alternativsystem zu SysV init. Daher hat die Redaktion die Gelegenheit genutzt, Upstart einmal etwas genauer unter die Lupe zu nehmen und herauszufinden, wie es sich im Vergleich zu runit und SysV init schlägt. Zumal einige vorhandene, beziehungsweise geplante Funktionen von Upstart genau die Zwecke erfüllen sollen, mit denen runit und seine Überwachungsfunktion von gestarteten Diensten (Service Supervision) einst die Herzen eroberten.

Canonical beschreibt Upstart als SysV init-Alternative auf Ereignisbasis, die sich während des Bootvorgangs um das Starten von Tasks und Diensten kümmert, beim Herunterfahren sämtliche Dienste und Tasks beendet, und die sämtliche gestarteten Dienste überwacht, solange das System am Laufen ist. Der Benutzer kann dabei nicht feststellen, dass das System irgendwie anders bootet.

Die althergebrachte Datei /etc/inittab gibt es zwar noch immer, aber sie bestimmt lediglich den Standard-Runlevel. Um alles andere kümmern sich die Konfigurationsdateien im Verzeichnis /etc/event.d/ (Fedora) und /etc/init/jobs.d/ (Ubuntu). Die Dateien ersetzen einige Zeilen in /etc/inittab. So enthält zum Beispiel die Datei /etc/event.d/tty1:


Im Vergleich dazu würde eine entsprechende Zeile in /etc/inittab auf einem SysV init-System folgendermaßen aussehen:


Der Inhalt ist in beiden Fällen der gleiche: Wenn tty1 stirbt, soll es neu gestartet werden. Wie man sehen kann, ist das mit SysV init kein Problem:


Anhand der abweichenden PID lässt sich erkennen, dass init den Dienst neu gestartet hat.

Leider ist Upstart in FC10 nicht ganz so erfolgreich:


Wenn man den Dienst auf FC10 killt, dann wird er nicht neu gestartet, und das ist ein erheblicher Rückschritt. In FC10 wird die Upstart-Version 0.3.9 verwendet, doch mittlerweile ist es bereits bei Version 0.5.0 angelangt. Warum FC10 bei der Veröffentlichung aber mit Version 0.3.9 ausgestattet wurde, obwohl es bereits die Version 0.5.0 gab, ist nicht wirklich nachvollziehbar. Wie dem auch sei – wer mit FC10 arbeitet und erwartet, dass das mit dem Neustarten von Diensten genauso gut funktioniert wie bislang, sollte sich schon einmal auf ein böses Erwachen gefasst machen.

Zu den angenehmen Features eines Dienstüberwachungssystems zählt das Neustarten von Diensten, wenn diese abstürzen oder unwillentlich beendet werden. Wer bereits einmal aus der Ferne den sshd-Dienst auf einem Remote-System gekillt und sich dann ausgeloggt hat, weiß genau, was gemeint ist. FC10 nutzt die Überwachungsfunktionen von Upstart leider nicht über mingetty hinaus, und das ist wirklich eine Schande (natürlich nur unter der Voraussetzung, dass es ordentlich funktionieren würde). Mit runit auf Annvix wurde jeder „daemonisierte“ Systemdienst überwacht, das heißt ein Dienst konnte gekillt werden oder abstürzen, und binnen Sekunden war er wieder da. Das dürften vor allem jene zu schätzen wissen, die mit Remote-Systemen oder Remote-Servern arbeiten.

Es sieht danach aus, als würde Upstart auch irgendwann einmal mit zeitbasierten Ereignissen umgehen können, wodurch man auf Zeitsteuerungssysteme wie cron, at und andere verzichten könnte. Damit läge es dann auch mit dem launchd-System auf OS X auf Augenhöhe, das sowohl mit Diensten als auch mit Ereignissen umgehen kann. Zukünftige Versionen von Upstart könnten sicherlich ganz praktisch werden, aber momentan scheint – zumindest was Fedora Core 10 anbelangt – runit noch die bessere Lösung für die Überwachung von Diensten zu sein.

ZDNet.de Redaktion

Recent Posts

Microsoft verschiebt erneut Copilot Recall

Die Entwickler arbeiten noch an weiteren „Verfeinerungen“. Windows Insider erhalten nun wohl eine erste Vorschau…

15 Stunden ago

GenKI im Job: Mitarbeitende schaffen Tatsachen

Laut Bitkom-Umfrage werden in jedem dritten Unternehmen in Deutschland private KI-Zugänge genutzt. Tendenz steigend.

17 Stunden ago

97 Prozent der Großunternehmen melden Cyber-Vorfälle

2023 erlitten neun von zehn Unternehmen in der DACH-Region Umsatzverluste und Kurseinbrüche in Folge von…

18 Stunden ago

„Pacific Rim“-Report: riesiges, gegnerisches Angriffs-Ökosystem

Der Report „Pacific Rim“ von Sophos beschreibt Katz-und-Maus-Spiel aus Angriffs- und Verteidigungsoperationen mit staatlich unterstützten…

21 Stunden ago

DeepL setzt erstmals auf NVIDIA DGX SuperPOD mit DGX GB200-Systemen

NVIDIA DGX SuperPOD soll voraussichtlich Mitte 2025 in Betrieb genommen und für Forschungsberechnungen genutzt werden.

21 Stunden ago

Latrodectus: Gefährlicher Nachfolger von IcedID

Latrodectus, auch bekannt als BlackWidow, ist auch unter dem Namen LUNAR SPIDER bekannt.

22 Stunden ago