X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd-halt.service.xml;h=552dbdf687a38ab001e8a425f9a5b39f42c5a8c9;hp=812281e60d5e0cb2e006b70bfe13b680fecc1c7e;hb=8f18f550e7023948f199616fdfbb0f09711fd615;hpb=909f413d3c572baadf9b13e36e1e90beba42af86 diff --git a/man/systemd-halt.service.xml b/man/systemd-halt.service.xml index 812281e60..552dbdf68 100644 --- a/man/systemd-halt.service.xml +++ b/man/systemd-halt.service.xml @@ -65,7 +65,7 @@ systemd-halt.service is a system service that is pulled in by halt.target and is responsible - for the actual system halt. Similar, + for the actual system halt. Similarly, systemd-poweroff.service is pulled in by poweroff.target, systemd-reboot.service by @@ -74,15 +74,21 @@ kexec.target to execute the respective actions. - When these services are run they ensure that PID + When these services are run, they ensure that PID 1 is replaced by the /usr/lib/systemd/systemd-shutdown tool which is then responsible for the actual - shutdown. Before shutting down this binary will try to + shutdown. Before shutting down, this binary will try to unmount all remaining file systems, disable all remaining swap devices, detach all remaining storage devices and kill all remaining processes. + It is necessary to have this code in a separate binary + because otherwise rebooting after an upgrade might be broken — + the running PID 1 could still depend on libraries which are not + available any more, thus keeping the file system busy, which + then cannot be re-mounted read-only. + Immediately before executing the actual system halt/poweroff/reboot/kexec systemd-shutdown will run all