Um SystemD zu definieren, gibt es nichts Besseres, als das Angebot der Projektmanager zu zitieren.
«Systemd ist ein System- und Service-Manager für Linux, der mit dem initscript SysV und LSB kompatibel ist. systemd bietet eine bemerkenswerte Kapazität für die Parallelisierung, verwendet Socket- und D-Bus-Aktivierung zum Starten von Diensten, ermöglicht die Initiierung von On-Demand-Daemons, verfolgt Prozesse mithilfe von Linux-Kontrollgruppen und unterstützt Snapshots und die Wiederherstellung des Systemzustands, die Aufrechterhaltung von Montagepunkten und automatischen Montagediensten und die Implementierung eines ausgeklügelten Abhängigkeitsverwaltungssystems auf der Grundlage einer logischen Steuerung der Dienste. ”
Zu den wichtigsten Funktionen, die wir hervorheben können;
- Prozessparallelisierung (in der Lage, zwei oder mehr Prozesse gleichzeitig auszuführen), was zu einem schnelleren Start des Systems führt.
- Optimieren Sie die Ressourcennutzung mit cgroups.
- Unterstützt Snapshots und Systemwiederherstellung an einem definierten Punkt.
- Montagepunkte und Montage von Lagereinheiten verwalten.
Im Gegensatz zu dem Runlevel, der von 0 auf 6 des alten Init ging, verwendet systemd Ziele, die alle mit dem Ziel verbundenen Prozesse gleichzeitig initiieren können. Das Interessante ist jedoch, dass Sie den Start des Grafikziels programmieren können, jedoch nicht vor dem Start des Prozesses. Mehrbenutzerziel
Um sicherzustellen, dass unsere Distribution von systemd verwaltet wird, können wir vom Terminal aus starten.
ps axu | head -n 2
Wir sollten etwas Ähnliches werfen:
Andernfalls würden Sie immer noch upstart oder init verwenden
Der Hauptbefehl zur Steuerung von systemd lautet systemctl. Einige der möglichen Verwendungszwecke sind die Prüfung des Systemzustands sowie die Verwaltung des Systems und der Dienste.
Wir können die Einheiten in Ausführung auflisten:
systemctl list-units
Die verfügbaren Laufwerke sind in den Verzeichnissen / lib / systemd / system und / etc / systemd / system aufgeführt. Sie können jedoch mit den folgenden Befehlen aufgelistet werden:
systemctl list-unit-files
Dies gibt mir die Liste der verfügbaren Einheiten und deren Status:
Unit Management
Dies kann für Daemons, Services, Mount Points, Sockets und allgemeine Systemadministration angewendet werden. Ein echtes Beispiel wäre der Apache-Webserver unter Centos 7.0
#Installieren Sie den Apache-Webserver $ yum -y installiere httpd # Aktivieren Sie den Dienst $ systemctl starte httpd # Aktivieren Sie den Dienst für den automatischen Start mit dem System $ systemctl aktiviert httpd #Überprüfen Sie den Status des Dienstes $ systemctl status httpd
Energiemanagement
Zielverwaltung (ähnlich wie Runlevels)
Überprüfen Sie die Liste aller Ziele im System:
$ systemctl list-units --type = target