X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fsystemd.service.xml;h=598e863651d65216690de4329049cab6718d8337;hb=08177c85efd52c2c2ab00991791649ad8cf61297;hp=11f6006636aab2e99f2f6c102379196112a62711;hpb=16dad32e437fdf2ffca03cc60a083d84bd31886f;p=elogind.git
diff --git a/man/systemd.service.xml b/man/systemd.service.xml
index 11f600663..598e86365 100644
--- a/man/systemd.service.xml
+++ b/man/systemd.service.xml
@@ -100,7 +100,7 @@
script. This is useful for compatibility with
SysV. Note that this compatibility is quite
comprehensive but not 100%. For details about the
- incomptibilities see the Incompatibilities
with SysV document.
@@ -219,7 +219,7 @@
Behavior of
is very similar
to , however
- actual execution of a the service
+ actual execution of the service
binary is delayed until all jobs are
dispatched. This may be used to avoid
interleaving of output of shell
@@ -245,7 +245,7 @@
Takes a boolean value
that specifies whether systemd should
try to guess the main PID of a service
- should if it cannot be determined
+ if it cannot be determined
reliably. This option is ignored
unless
is set and
@@ -283,7 +283,7 @@
BusName=Takes a D-Bus bus
- name, where this service is reachable
+ name, that this service is reachable
as. This option is mandatory for
services where
Type= is set to
@@ -296,52 +296,70 @@
ExecStart=
- Takes a command line
- that is executed when this service
- shall be started up. The first token
- of the command line must be an
- absolute file name, then followed by
- arguments for the process. It is
- mandatory to set this option for all
- services. This option may not be
- specified more than once, except when
+ Commands with their
+ arguments that are executed when this
+ service is started.
+
+
+ When
Type=oneshot is
- used in which case more than one
- ExecStart= line is
- accepted which are then invoked one by
- one, sequentially in the order they
- appear in the unit file.
+ used, more than one command may be
+ specified. Multiple command lines may
+ be concatenated in a single directive,
+ by separating them with semicolons
+ (these semicolons must be passed as
+ separate words). Alternatively, this
+ directive may be specified more than
+ once with the same effect. However,
+ the latter syntax is not recommended
+ for compatibility with parsers
+ suitable for XDG
+ .desktop files.
+ The commands are invoked one by
+ one sequentially in the order they
+ appear in the unit file.
+ When Type is
+ not , only one
+ command may be given. Lone semicolons
+ may be escaped as
+ '\;'.
+
+ Unless
+ Type=forking is
+ set, the process started via this
+ command line will be considered the
+ main process of the daemon.
+
+ The command line accepts
+ '%' specifiers as
+ described in
+ systemd.unit5. Note
+ that the first argument of the command
+ line (i.e. the program to execute) may
+ not include specifiers.Optionally, if the absolute file
name is prefixed with
- @, the second token
+ '@', the second token
will be passed as
argv[0] to the
executed process, followed by the
further arguments specified. If the
- first token is prefixed with
- - an exit code of
+ absolute file name is prefixed with
+ '-' an exit code of
the command normally considered a
failure (i.e. non-zero exit status or
abnormal exit due to signal) is ignored
and considered success. If both
- - and
- @ are used for the
- same command the former must precede
- the latter. Unless
- Type=forking is
- set, the process started via this
- command line will be considered the
- main process of the daemon. The
- command line accepts % specifiers as
- described in
- systemd.unit5.
+ '-' and
+ '@' are used they
+ can appear in either order.On top of that basic environment
variable substitution is
supported. Use
${FOO} as part of a
- word, or as word of its own on the
+ word, or as a word of its own on the
command line, in which case it will be
replaced by the value of the
environment variable including all
@@ -365,6 +383,13 @@
explicitly to a shell implementation
of some kind. Example:
ExecStart=/bin/sh -c 'dmesg | tac'
+
+ For services run by a user
+ instance of systemd the special
+ environment variable
+ MANAGERPID is set
+ to the PID of the systemd
+ instance.
@@ -374,24 +399,13 @@
Additional commands
that are executed before or after
the command in
- ExecStart=, respectively. Multiple
- command lines may be concatenated in a
- single directive, by separating them
- by semicolons (these semicolons must
- be passed as separate words). In that
- case, the commands are executed one
- after the other,
- serially. Alternatively, these
- directives may be specified more than
- once with the same effect. However,
- the latter syntax is not recommended
- for compatibility with parsers
- suitable for XDG
- .desktop files.
- Use of these settings is
- optional. Specifier and environment
- variable substitution is
- supported.
+ ExecStart=, respectively.
+ Syntax is the same as for
+ ExecStart=, except
+ that multiple command lines are allowed
+ and the commands are executed one
+ after the other, serially.
+
@@ -400,19 +414,19 @@
trigger a configuration reload in the
service. This argument takes multiple
command lines, following the same
- scheme as pointed out for
- ExecStartPre=
+ scheme as described for
+ ExecStart=
above. Use of this setting is
optional. Specifier and environment
variable substitution is supported
here following the same scheme as for
ExecStart=. One
- special environment variable is set:
- if known $MAINPID is
- set to the main process of the
- daemon, and may be used for command
- lines like the following:
- /bin/kill -HUP
+ additional special environment
+ variables is set: if known
+ $MAINPID is set to
+ the main process of the daemon, and
+ may be used for command lines like the
+ following: /bin/kill -HUP
$MAINPID.
@@ -422,9 +436,8 @@
stop the service started via
ExecStart=. This
argument takes multiple command lines,
- following the same scheme as pointed
- out for
- ExecStartPre=
+ following the same scheme as described
+ for ExecStart=
above. Use of this setting is
optional. All processes remaining for
a service after the commands
@@ -450,9 +463,8 @@
configured in
ExecStop=. This
argument takes multiple command lines,
- following the same scheme as pointed
- out for
- ExecStartPre. Use
+ following the same scheme as described
+ for ExecStart. Use
of these settings is
optional. Specifier and environment
variable substitution is
@@ -571,7 +583,7 @@
0. If set to
it will be
restarted only when it exited with an
- exit code not equalling 0, when
+ exit code not equaling 0, when
terminated by a signal (including on
core dump), when an operation (such as
service reload) times out or when the