X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd-suspend.service.xml;h=9b8bad4791cb574507f77c674e35a41e4663eb00;hp=dea778fbec661afa5e074de6c157f11287e65bf8;hb=5a5c72ca6ed88b7068e08b0ebc191a5b21991b62;hpb=e2b696ee9bffad34daaafc99d3a5d8ee13504288 diff --git a/man/systemd-suspend.service.xml b/man/systemd-suspend.service.xml index dea778fbe..9b8bad479 100644 --- a/man/systemd-suspend.service.xml +++ b/man/systemd-suspend.service.xml @@ -45,13 +45,15 @@ systemd-suspend.service systemd-hibernate.service + systemd-hybrid-sleep.service systemd-sleep - systemd System Suspend/Hibernate Logic + System sleep state logic systemd-suspend.service systemd-hibernate.service + systemd-hybrid-sleep.service /usr/lib/systemd/systemd-sleep @@ -64,38 +66,59 @@ for the actual system suspend. Similar, systemd-hibernate.service is pulled in by hibernate.target to - executed the actual hibernation. - - Immediately before entering system suspend and - hibernation - systemd-suspend.service will run - all executables in + execute the actual hibernation. Finally, + systemd-hybrid-sleep.service is + pulled in by hybrid-sleep.target + to execute hybrid hibernation with system + suspend. + + Immediately before entering system suspend + and/or hibernation + systemd-suspend.service (and the + other mentioned units, respectively) will run all + executables in /usr/lib/systemd/system-sleep/ and pass two arguments to them. The first argument will be "pre", the second either - "suspend" or - "hibernate", depending on the chosen - action. Immediately after leaving system suspend and - hibernation the same executables are run, but the - first argument is now "post". All - executables in this directory are executed in - parallel, and execution of the action is not continued - before all executables finished. + "suspend", + "hibernate", or + "hybrid-sleep" depending on the + chosen action. Immediately after leaving system + suspend and/or hibernation the same executables are run, + but the first argument is now + "post". All executables in this + directory are executed in parallel, and execution of + the action is not continued before all executables + finished. Note that scripts or binaries dropped in /usr/lib/systemd/system-sleep/ are intended for local use only and should be considered hacks. If applications want to be notified - of system suspend and resume there are much nicer - interfaces available. - + of system suspend/hibernation and resume there are + much nicer interfaces available. + + Note that + systemd-suspend.service, + systemd-hibernate.service and + systemd-hybrid-sleep.service + should never be executed directly. Instead, trigger + system sleep states with a command such as + "systemctl suspend" or + similar. + + Internally, this service will echo a string like + mem into + /sys/power/state, to trigger the + actual system suspend. See Also systemd1, - systemd.special7 + systemctl1, + systemd.special7, systemd-halt.service8