diff --git a/man/systemd.service.xml b/man/systemd.service.xml
index 70c1d1e5fa..c3eebeabc1 100644
--- a/man/systemd.service.xml
+++ b/man/systemd.service.xml
@@ -129,25 +129,27 @@
configured with
ExecStart= is the
main process of the service. In this
- mode, communication channels must be
- installed before the daemon is started
- up (e.g. sockets set up by systemd,
- via socket activation), as systemd
- will immediately proceed starting
- follow-up units.
+ mode, if the process offers
+ functionality to other processes on
+ the system its communication channels
+ should be installed before the daemon
+ is started up (e.g. sockets set up by
+ systemd, via socket activation), as
+ systemd will immediately proceed
+ starting follow-up units.
If set to
it is
expected that the process configured
with ExecStart=
- will start up and call
- fork(). The
- parent process is expected to finish
- when start-up is complete and all
- communication channels set up. The
- child continues to run as the main
- daemon process. This is the behaviour
- of traditional UNIX daemons. If this
+ will call fork()
+ as part of its start-up. The parent process is
+ expected to exit when start-up is
+ complete and all communication
+ channels set up. The child continues
+ to run as the main daemon
+ process. This is the behaviour of
+ traditional UNIX daemons. If this
setting is used, it is recommended to
also use the
PIDFile= option, so
@@ -176,7 +178,7 @@
will proceed starting follow-up units
after the D-Bus bus name has been
acquired. Service units with this
- option configured implicitly have
+ option configured implicitly gain
dependencies on the
dbus.target
unit.
@@ -193,11 +195,11 @@
notification message has been sent. If
this option is used
NotifyAccess= (see
- below) must be set to open access to
+ below) should be set to open access to
the notification socket provided by
systemd. If
NotifyAccess= is not
- set, it will be implicitly set to
+ set, it will implicitly be set to
.
@@ -250,21 +252,31 @@
arguments for the process. It is
mandatory to set this option for all
services. This option may not be
- specified more than once. Optionally,
- if the absolute file name is prefixed
- with @, the second
- token will be passed as
+ specified more than once, except 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.
+
+ Optionally, if the absolute file
+ name is prefixed with
+ @, 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 error code of
+ - an exit code of
the command normally considered a
- failure is ignored and considered
- success. If both -
- and @ are used for
- the same command the latter must
- preceed the latter. Unless
+ failure (i.e. non-zero exit status or
+ abormal exit due to signal) is ignored
+ and considered success. If both
+ - and
+ @ are used for the
+ same command the former must preceed
+ the latter. Unless
Type=forking is
set, the process started via this
command line will be considered the