Grafische Frontends erleichtern es, die Möglichkeiten das neuen Prozessmanagers Systemd voll auszuschöpfen.
Der System- und Prozessmanager Systemd [1] löst unter Linux nach längeren intensiven Diskussionen inzwischen weitgehend das traditionelle SysVinit ab. Sowohl Administratoren also auch ambitionierte Heimanwender verlangt Systemd durch viele Änderungen und Neuerungen eine Einarbeitung ab.
Inzwischen gibt es jedoch eine Reihe grafische Frontends, die mit jeweils unterschiedlichem Funktionsumfang die Arbeit mit dem neuen Prozessmanager erheblich erleichtern wollen. Die meisten davon orientieren sich optisch und im Bedienkonzept an etablierten Desktop-Umgebungen wie KDE Plasma oder Gnome, alternativ gibt es aber auch desktopübergreifende Lösungen.
Mit Kcmsystemd [2] Systemd-KCM [3] und SystemdGenie [4] stehen drei leistungsfähige Werkzeuge für Qt-basierte Desktop-Umgebungen bereit, um die Kontrolle über das Init-System und die laufenden Prozesse zu behalten.
Systemd vs. SysVinit
Systemd erinnert strukturell entfernt an SysVinit: Während der ältere Systemmanager die unterschiedlichen Prozesse über Skripte startete, zeichnen bei Systemd dafür sogenannte Units verantwortlich. Sie initialisieren jedoch nicht nur einzelne Prozesse, sondern hängen unter anderem auch Laufwerke ein, verwalten den Swap-Speicher oder legen neue Devices an. Systemd beherrscht dabei die Parallelisierung der einzelnen Units. Das simultane Abarbeiten mehrerer Aufgaben beschleunigt insbesondere auf Hardware mit modernen Mehrkernprozessoren den Systemstart deutlich.
Welche Unit welche Aufgabe erfüllt, verrät ihre Dateiendung: Die Extension .service bezeichnet Service-Units, die Prozesse verwalten. Sie lassen sich am ehesten mit den Init-Skripten von SysVinit vergleichen. Units mit der Endung .mount übernehmen das Verwalten von Laufwerken und Dateisystemen. Units, die auf .device enden, legen Gerätedateien an, während jene mit .timer am Ende wiederkehrende Aufgaben wie Cron-Jobs regeln. Daneben gibt es noch .socket– und .target-Units: Letztere fassen einzelne Units zusammen und lassen sich daher mit den Runleveln unter SysVinit vergleichen, während die .socket-Units einzelne Netzwerk-Sockets öffnen.
Da die Konfigurationsangaben der einzelnen Units in Textdateien stehen, lässt sich jede Unit mithilfe des Befehls systemctl edit --full Unit modifizieren. Um die zentrale Logdatei des Systems zu betrachten, rufen Sie nicht mehr – wie auf SysVinit-Systemen – die Datei /var/log/messages auf. Stattdessen stellt Systemd den Befehl journalctl bereit, mit dessen Hilfe Sie die im Binärformat angelegte Logdatei öffnen. Über Parameter des Befehls lassen sich gezielt einzelne Teilbereiche einsehen.
Trio im Test
Kcmsystemd und Systemd-KCM entstanden ursprünglich für den KDE-Desktop, wobei Kcmsystemd für KDE-SC-4.x-Oberflächen und Systemd-KCM für Plasma-5-Umgebungen konzipiert wurden. SystemdGenie entspricht in seinem Funktionsumfang weitgehend Systemd-KCM, arbeitet jedoch als Einzelanwendung.
Funktionell und optisch unterscheiden sich die beiden in KDE integrierten Werkzeuge nur geringfügig, während SystemdGenie teils davon abweicht. Alle drei Tools lassen sich auch in anderen Desktop-Umgebungen nutzen, die auf den Qt-Bibliotheken basieren, wie etwa LXQt.
Kcmsystemd
Nach dem Start präsentiert sich Kcmsystemd mit einem übersichtlichen Programmfenster: Im Hauptsegment erscheinen im voreingestellt aktiven Reiter Units alle Prozesse des Systems in einer mehrspaltigen tabellarischen Ansicht. Hier lässt sich auch erkennen, in welchem Zustand sich die einzelnen Prozesse befinden.
Möchten Sie nur bestimmte Unit-Typen anzeigen lassen, beschränken Sie durch Auswahl eines Eintrags im Auswahlfeld All unit types oben links im Programmfenster die Anzeige auf die gewünschte Option. Sollen auch inaktive Units in der Liste auftauchen, setzen Sie zusätzlich einen Haken vor Show inactive. Inaktive Units erscheinen nun in roter Farbe, alle anderen Prozesse in grüner Schrift (Abbildung 1).
Infozentrum
Kcmsystemd zeigt zu jeder einzelnen Unit detaillierte Informationen, sobald Sie in der Listenansicht auf den entsprechenden Prozess klicken. Sie erscheinen dann in Gestalt einer tabellarischen Übersicht im unteren Fenstersegment. Darunter befinden sich vier Schalter, von denen sich – je nach gewählter Unit – nicht alle aktivieren lassen. Mit ihrer Hilfe stoppen oder starten Sie die betreffende Unit, veranlassen einen Neustart des Prozesses oder ein Neuladen der Konfiguration.
Verweilen Sie mit dem Mauszeiger eine Weile in einer Unit-Zeile, öffnet sich ein Fenster, das Informationen zu den Abhängigkeiten des aktuellen Prozesses anzeigt. Der Dialog nennt nicht nur Abhängigkeiten, von denen die aktuelle Unit abhängt, sondern auch jene Units, die den markierten Prozess benötigen.
Editieren
Die Textdateien zur Konfiguration der einzelnen Units dürfen Sie mit administrativen Rechten auch individuell editieren. Komplizierte Shell-Skripte gibt es nicht, Sie benötigen auch keinen Shell-Interpreter.
Sobald Sie mit einem Rechtsklick die zu editierende Unit markieren, öffnet sich ein Kontextmenü, aus dem Sie die erste Option Edit unit file wählen. Nach Eingabe des Root-Passworts öffnet sich KWrite, der Standard-Texteditor unter KDE, und ermöglicht das Bearbeiten der Konfigurationsdatei (Abbildung 2). Unter OpenSuse Leap 42.3 ließ sich diese Funktion jedoch nicht aufrufen. Das liegt an einem falschen Pfad zum Texteditor, der sich jedoch auch nicht manuell ändern lässt.
Da fehlerhaft konfigurierte Units mitunter erhebliche Folgen für das Systemverhalten nach sich ziehen, empfiehlt sich jedoch vor dem Bearbeiten einer Konfiguration eine ausführliche Lektüre der Dokumentation [5]. Um die Änderungen zu aktivieren, müssen Sie nach dem Editieren die betreffende Unit neu starten.
Allumfassend
Sowohl in Kcmsystemd als auch in Systemd-KCM finden Sie zusätzliche Reiter, die eine weitergehende Konfiguration von Systemd ermöglichen. Die unter der KDE-4.x-Variante im Programmfenster oben horizontal von links nach rechts angeordneten Reiter Systemd, Voreinstellungen, Journald und Logind verdeutlichen bereits, dass der Funktionsumfang des Tools weit über das reine Unit-Management hinausgeht.
Während Sie im Reiter Systemd einzelne Einstellungen zum Logging, zum Start von Systemd und zum Verhalten bei einem Absturz vornehmen, finden Sie unter Voreinstellungen vor allem Optionen für das Timing beim Starten und Stoppen einzelner Units.
Der Abschnitt Journald enthält dagegen Einstelloptionen für das Journal. Systemd führt wie SysVinit ein Journal, im Gegensatz zum Vorgänger jedoch in binärer Form. Daher lassen sich die Einträge nicht mit den herkömmlichen Befehlen wie Cat, Tail oder Less betrachten, sondern nur mithilfe von Journalctl.
Im Reiter Journald legen Sie fest, für welchen Zeitraum Journaleinträge erhalten bleiben, wie groß die Journaldatei werden darf und ob das System sie komprimiert. Darüber hinaus legen Sie in diesem Abschnitt die maximale Anzahl von Einträgen im Journal innerhalb eines definierten Zeitraumes fest (Abbildung 3). Durch sinnvolle Einstellungen vermeiden Sie übergroße und damit auch unübersichtliche Journaldateien.

Abbildung 3: Die Einstellungen zum Journal beziehungsweise den Logdateien fallen sehr umfangreich aus.
Der Reiter Logind bietet einige Einstellmöglichkeiten des Login-Dämons zu virtuellen Terminals und zum Power-Management des Systems. Änderungen an diesen Einstellungen erfordern einen Neustart des Systems.
Systemd-KCM und SystemdGenie
Die beiden für den Plasma-5-Desktop entwickelten Frontends Systemd-KCM und SystemdGenie unterscheiden sich auf den ersten Blick nur rudimentär von der KDE-SC-4.x-Variante: Auch sie liefern eine tabellarische Auflistung der im System vorhandenen Prozesse samt zugehöriger Auswahl- und Suchfelder.
In SystemdGenie als Einzelapplikation rückten jedoch die Schaltflächen für das Neuladen der Konfiguration sowie das Starten und Deaktivieren von Units vom unteren Fensterrand über die Tabellenansicht. Zudem bietet das Tool auch eine Menüzeile und verwendet eine andere Reiterstruktur.
Systemd-KCM als direkter Nachfolger von Kcmsystemd bringt ebenfalls eine neue Reiterstruktur mit, die der von SystemdGenie entspricht. Es verfügt jedoch weder über Schaltflächen zum Steuern von Units am unteren Bildschirmrand noch über den Infobereich unterhalb der tabellarischen Listenansicht.
Beide neueren Systemd-GUIs behalten aber das überlappende Informationsfenster beim Berühren einer Unit mit dem Mauszeiger bei. Es zeigt jedoch deutlich weniger Informationen an als bei der Vorgängerversion (Abbildung 4).
Bei Systemd-KCM steuern Sie die einzelnen Units über ein Kontextmenü, das sich nach einem Rechtsklick auf die fragliche Unit öffnet. Hier editieren Sie bei Bedarf auch die zugehörige Konfigurationsdatei, allerdings nicht in KWrite, sondern mithilfe eines integrierten, rudimentären Editors.
Auch die Reiterstruktur passten die Entwickler an: Der Abschnitt Einrichtung fasst hier die Konfiguration der Logind- und Journald-Prozesse zusammen. Dabei wählen Sie nach dem Aktivieren des Reiters oben rechts in einem Auswahlfeld die gewünschte Konfigurationsdatei aus und erhalten anschließend darunter eine Tabelle der vorhandenen Parameter, die sich nun modifizieren lassen.
Als sehr hilfreich erweisen sich die kleinen Info-Fenster, die beim Berühren der Optionen mit dem Mauszeiger erscheinen. Die einzelnen Parameter erscheinen nach dem Anklicken der Option in einem Auswahlfeld, was eine Fehlkonfiguration vermeidet. Die Reiter Sitzungen und Zeitmesser dienen nur informativen Zwecken, während der Reiter Benutzereinheiten vom Anwender gestartete Prozesse umfasst (Abbildung 5).
SystemdGenie übernimmt die Reiterstruktur von Systemd-KCM und bietet ebenfalls eine freie Bearbeitung der Konfigurationsdateien. Auch hier können Sie die Konfiguration einzelner Units über das Kontextmenü modifizieren. Im Gegensatz zum in KDE Plasma 5 integrierten Systemd-KCM ruft SystemdGenie entweder aus Kontextmenüs heraus oder über den Schalter Open Man Page Hilfetexte auf, die insbesondere ungeübten Anwendern die Parametereingabe erleichtern.
Auch über Unit aus der Menüleiste verwalten und editieren Sie bei Bedarf die einzelnen Prozesse. Zusätzlich findet sich im Menü Daemon die Option, Systemd komplett neu zu laden oder neu auszuführen.
Fazit
Die drei für die unterschiedlichen Varianten des KDE-Desktops entwickelten grafischen Oberflächen zur Systemd-Verwaltung ähneln sich zwar optisch sehr, unterscheiden sich jedoch bei den Funktionen teils deutlich. Allen gemeinsam ist der große Funktionsumfang, der weit über das Starten und Stoppen einzelner Units hinausgeht.
Alternativen
Auch für Gnome und andere GTK3+-basierte Desktop-Umgebungen stehen mit dem Systemd System Manager und dem Systemd Manager grafische Verwaltungswerkzeuge für Systemd bereit. Allerdings fällt deren Funktionalität deutlich geringer aus als bei den für KDE Plasma konzipierten Tools. Obendrein pflegen die Entwickler diese Tools mehr schlecht als recht, weswegen sie unter aktuellen Distributionen teils Fehler verursachen. Positiv fällt dagegen Cockpit [6] auf, das als webbasiertes Verwaltungswerkzeug an keine Desktop-Umgebung gebunden ist. Es weist einen ähnlichen Funktionsumfang auf wie die KDE-Werkzeuge, arbeitet jedoch mit jedem gängigen Webbrowser.
Infos
- Systemd: https://www.freedesktop.org/wiki/Software/systemd/
- Kcmsystemd: https://github.com/rthomsen/kcmsystemd
- Systemd-KCM: https://github.com/KDE/systemd-kcm
- SystemdGenie: https://github.com/KDE/systemdgenie
- Manpages der Systemd-Prozesse: https://www.freedesktop.org/software/systemd/man/index.html
- Cockpit: https://cockpit-project.org









