summaryrefslogtreecommitdiff
path: root/man/systemd.service.xml
diff options
context:
space:
mode:
authorRichard Maw <richard.maw@codethink.co.uk>2015-08-11 12:29:45 +0000
committerRichard Maw <richard.maw@codethink.co.uk>2015-08-11 13:01:53 +0000
commit12e2683d4804326d29ebf92bba9f0dd3810a5ead (patch)
treeb2cc69318687ab40d4915b68489fd79fcbb6a54e /man/systemd.service.xml
parent3f1818cf70ac34cf93f1f033b4f1bbb7a89b3dff (diff)
man: Describe when ExecStartFoo= commands are run in more detail
Previously it was just descibed that ExecStartPost= commands were started "after" the ExecStart= command(s). This hasn't specified after which event, which varies from after it has been started, after it has exited, after it has sent READY=1 or after it has taken the bus name, depending on Type=. This now describes that it happens after the *service* has "started", as defined by the Type=, and provides some clarification about precisely when this is. This may be unnecessary duplication, but it removes the ambiguity as to whether RemainAfterExit=no means that ExecStartPost= shouldn't be started because it means the service has stopped when the ExecStart= command terminates, not "started".
Diffstat (limited to 'man/systemd.service.xml')
-rw-r--r--man/systemd.service.xml13
1 files changed, 13 insertions, 0 deletions
diff --git a/man/systemd.service.xml b/man/systemd.service.xml
index 7e96989583..4c113a3479 100644
--- a/man/systemd.service.xml
+++ b/man/systemd.service.xml
@@ -337,6 +337,19 @@
<literal>-</literal>) fail, the rest are not executed and the
unit is considered failed.</para>
+ <para><varname>ExecStart=</varname> commands are only run after
+ all <varname>ExecStartPre=</varname> commands that were not prefixed
+ with a <literal>-</literal> exit successfully.</para>
+
+ <para><varname>ExecStartPost=</varname> commands are only run after
+ the service has started, as determined by <varname>Type=</varname>
+ (i.e. The process has been started for <varname>Type=simple</varname>
+ or <varname>Type=idle</varname>, the process exits successfully for
+ <varname>Type=oneshot</varname>, the initial process exits successfully
+ for <varname>Type=forking</varname>, <literal>READY=1</literal> is sent
+ for <varname>Type=notify</varname>, or the <varname>BusName=</varname>
+ has been taken for <varname>Type=dbus</varname>).</para>
+
<para>Note that <varname>ExecStartPre=</varname> may not be
used to start long-running processes. All processes forked
off by processes invoked via <varname>ExecStartPre=</varname> will