systemd-halt.service, systemd-poweroff.service, systemd-reboot.service,
systemd-kexec.service, systemd-shutdown - Logik zum Herunterfahren des Systems
systemd-halt.service
systemd-poweroff.service
systemd-reboot.service
systemd-kexec.service
/lib/systemd/systemd-shutdown
/lib/systemd/system-shutdown/
Systemd-halt.service ist ein Systemdienst der in den Modus Halt.target wechselt
und verantwortlich für das Anhalten des Systems ist. Vergleichbar mit
Systemd-poweroff.service für den Modus Poweroff.target,
Systemd-reboot.service in den Reboot.target- und Systemd-kexec.service in den
Kexec.target-Modus wechselt und dort die jeweiligen Anweisungen
durchführt.
Sobald diese Dienste laufen, wird sichergestellt, dass PID 1 vom Werkzeug
/lib/systemd/systemd-shutdown ersetzt wird. Dies ist dann verantwortlich
für das tatsächliche Herunterfahren des Systems. Vor dem
Herunterfahren wird dieses Programm versuchen, alle verbleibenden Dateisysteme
auszuhängen, alle verbliebenen Auslagerungsgeräte zu
deaktivieren, die verbleibenden Speichergeräte zu trennen und alle
verbleibenden Prozesse zu beenden.
Es ist nötig, dass dieser Code in einem separaten Programm liegt, da
sonst ein Neustart nach einem Upgrade möglicherweise nicht mehr
funktioniert – die laufende PID 1 könnte abhängig
von Bibliotheken sein, die gar nicht mehr verfügbar sind. Diese
könnten das Dateisystem fortgehend beschäftigen, so dass es
nicht im Nur-Lesemodus neu eingehängt werden kann.
Unmittelbar vor dem tatsächlichen Anhalten, Herunterfahren, Neustarten
oder Starten des Systems, führt Systemd-shutdown alle
ausführbaren Dateien in /lib/systemd/system-shutdown/ mit folgenden
Argumenten aus: entweder »halt«, »poweroff«,
»reboot« oder »kexec«, abhängig von der
zuvor getroffenen Entscheidung. Alle ausführbaren Dateien im
Verzeichnis werden parallel ausgeführt. Es wird nicht weiter
fortgefahren, bis alle laufenden Dateien beendet wurden.
Beachten Sie, dass Sie Systemd-halt.service (und die dazugehörigen Units)
niemals direkt aufrufen sollten. Lösen Sie das Herunterfahren mit einem
Befehl wie »systemctl halt« aus.
systemd(1),
systemctl(1),
systemd.special(7),
reboot(2),
systemd-suspend.service(8),
bootup(7)
Die deutsche Übersetzung dieser Handbuchseite wurde von Alexander Bachmer
<
[email protected]>, Dr. Tobias Quathamer
<
[email protected]> und Mario Blättermann
<
[email protected]> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU
General Public License Version 3 oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken
Sie bitte eine E-Mail an die
Mailingliste
der Übersetzer