X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fsystemd.service.xml;h=233807d2b3313f6dc2a027051d96a964350a32b6;hb=75d67e683735035949bfdcf71140747b9909d8a1;hp=e5262f6d60f8034852016155dcc5ce92bba33f8b;hpb=2292707df5dda00662d0b4905c14aa4fa8d1f1fa;p=elogind.git
diff --git a/man/systemd.service.xml b/man/systemd.service.xml
index e5262f6d6..233807d2b 100644
--- a/man/systemd.service.xml
+++ b/man/systemd.service.xml
@@ -9,16 +9,16 @@
Copyright 2010 Lennart Poettering
systemd is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
+ under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
systemd is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
+ You should have received a copy of the GNU Lesser General Public License
along with systemd; If not, see .
-->
@@ -121,12 +121,14 @@
,
,
,
- .
+ or
+ .
If set to
(the default
- value) it is expected that the process
- configured with
+ value if BusName=
+ is not specified) it is expected that
+ the process configured with
ExecStart= is the
main process of the service. In this
mode, if the process offers
@@ -180,8 +182,10 @@
acquired. Service units with this
option configured implicitly gain
dependencies on the
- dbus.target
- unit.
+ dbus.socket
+ unit. This type is the default if
+ BusName= is
+ specified.
Behaviour of
is similar to
@@ -198,9 +202,19 @@
below) should be set to open access to
the notification socket provided by
systemd. If
- NotifyAccess= is not
- set, it will implicitly be set to
+ NotifyAccess= is
+ not set, it will be implicitly set to
.
+
+ Behaviour of
+ is very similar
+ to , however
+ actual execution of a the service
+ binary is delayed until all jobs are
+ dispatched. This may be used to avoid
+ interleaving of output of shell
+ services with the status output on the
+ console.
@@ -215,6 +229,30 @@
+
+ GuessMainPID=
+
+ Takes a boolean value
+ that specifies whether systemd should
+ try to guess the main PID of a service
+ should if it cannot be determined
+ reliably. This option is ignored
+ unless
+ is set and
+ is unset because for the other types
+ or with an explicitly configured PID
+ file the main PID is always known. The
+ guessing algorithm might come to
+ incorrect conclusions if a daemon
+ consists of more than one process. If
+ the main PID cannot be determined
+ failure detection and automatic
+ restarting of a service will not work
+ reliably. Defaults to
+ .
+
+
+
PIDFile=
@@ -223,7 +261,11 @@
daemon. Use of this option is
recommended for services where
Type= is set to
- .
+ . systemd will
+ read the PID of the main process of
+ the daemon after start-up of the
+ service. systemd will not write to the
+ file configured here.
@@ -283,20 +325,28 @@
main process of the daemon. The
command line accepts % specifiers as
described in
- systemd.unit5. On
- top of that basic environment variable
- substitution is supported, where
- ${FOO} is replaced
- by the string value of the environment
- variable of the same name. Also
- $FOO may appear as
- separate word on the command line in
- which case the variable is replaced by
- its value split at whitespaces. Note
- that the first argument (i.e. the
- binary to execute) may not be a
- variable, and must be a literal and
- absolute path name.
+ systemd.unit5.
+
+ 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
+ command line, in which case it will be
+ replaced by the value of the
+ environment variable including all
+ whitespace it contains, resulting in a
+ single argument. Use
+ $FOO as a separate
+ word on the command line, in which
+ case it will be replaced by the value
+ of the environment variable split up
+ at whitespace, resulting in no or more
+ arguments. Note that the first
+ argument (i.e. the program to execute)
+ may not be a variable, and must be a
+ literal and absolute path
+ name.
@@ -420,7 +470,41 @@
time span value such as "5min
20s". Pass 0 to disable the timeout
logic. Defaults to
- 60s.
+ 90s, except when Type=oneshot is
+ used in which case the timeout
+ is disabled by default.
+
+
+
+ WatchdogSec=
+ Configures the
+ watchdog timeout for a service. This
+ is activated when the start-up is
+ completed. The service must call
+ sd_notify3
+ regularly with "WATCHDOG=1". If the
+ time between two such calls is larger
+ than the configured time then the
+ service is placed in a failure
+ state. By setting
+ Restart=
+ to or
+ the service
+ will be automatically restarted. The
+ time configured here will be passed to
+ the executed service process in the
+ WATCHDOG_USEC=
+ environment variable. If
+ this option is used
+ NotifyAccess= (see
+ 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
+ . Defaults to 0,
+ which disables this
+ feature.
@@ -442,16 +526,19 @@
0. If set to
it will be
restarted only when it exited with an
- exit code not equalling 0, or when
- terminated by a signal. If set to
+ exit code not equalling 0, when
+ terminated by a signal, when an
+ operation times out or when the
+ configured watchdog timeout is
+ triggered. If set to
it will be
restarted only if it exits due to
reception of an uncaught signal. If
set to the
service will be restarted regardless
- whether it exited cleanly or not, or
+ whether it exited cleanly or not,
got terminated abnormally by a
- signal.
+ signal or hit a timeout.
@@ -501,36 +588,12 @@
false.
-
- SysVStartPriority=
- Set the SysV start
- priority to use to order this service
- in relation to SysV services lacking
- LSB headers. This option is only
- necessary to fix ordering in relation
- to legacy SysV services, that have no
- ordering information encoded in the
- script headers. As such it should only
- be used as temporary compatibility
- option, and not be used in new unit
- files. Almost always it is a better
- choice to add explicit ordering
- directives via
- After= or
- Before=,
- instead. For more details see
- systemd.unit5. If
- used, pass an integer value in the
- range 0-99.
-
-
KillMode=Specifies how
processes of this service shall be
killed. One of
,
- ,
,
.
@@ -542,10 +605,6 @@
stop command (as configured with
ExecStop=) is
executed. If set to
- only
- the members of the process group of
- the main service process are
- killed. If set to
only the main
process itself is killed. If set to
no process is
@@ -560,14 +619,17 @@
.
Processes will first be
- terminated via SIGTERM (unless this is
- changed via
+ terminated via SIGTERM (unless the
+ signal to send is changed via
KillSignal=). If
then after a delay (configured via the
TimeoutSec= option)
processes still remain, the
termination request is repeated with
- the SIGKILL signal. See
+ the SIGKILL signal (unless this is
+ disabled via the
+ SendSIGKILL=
+ option). See
kill2
for more
information.
@@ -581,6 +643,17 @@
+
+ SendSIGKILL=
+ Specifies whether to
+ send SIGKILL to remaining processes
+ after a timeout, if the normal
+ shutdown procedure left processes of
+ the service around. Takes a boolean
+ value. Defaults to "yes".
+
+
+
NonBlocking=Set O_NONBLOCK flag
@@ -615,10 +688,16 @@
accepted. If all
services updates from all members of
the service's control group are
- accepted. This option must be set to
+ accepted. This option should be set to
open access to the notification socket
when using
- Type=notify (see above).
+ Type=notify or
+ WatchdogUsec= (see
+ above). If those options are used but
+ NotifyAccess= not
+ configured it will be implicitly set
+ to
+ .
@@ -626,11 +705,11 @@
Specifies the name of
the socket units this service shall
inherit the sockets from when the
- service (ignoring the different suffix
- of course) is started. Normally it
+ service is started. Normally it
should not be necessary to use this
setting as all sockets whose unit
shares the same name as the service
+ (ignoring the different suffix of course)
are passed to the spawned
process.
@@ -648,6 +727,101 @@
refers to.
+
+ StartLimitInterval=
+ StartLimitBurst=
+
+ Configure service
+ start rate limiting. By default
+ services which are started more often
+ than 5 times within 10s are not
+ permitted to start any more times
+ until the 10s interval ends. With
+ these two options this rate limiting
+ may be modified. Use
+ StartLimitInterval=
+ to configure the checking interval
+ (defaults to 10s, set to 0 to disable
+ any kind of rate limiting). Use
+ StartLimitBurst= to
+ configure how many starts per interval
+ are allowed (defaults to 5). These
+ configuration options are particularly
+ useful in conjunction with
+ Restart=.
+
+
+
+ StartLimitAction=
+
+ Configure the action
+ to take if the rate limit configured
+ with
+ StartLimitInterval=
+ and
+ StartLimitBurst= is
+ hit. Takes one of
+ ,
+ ,
+ or
+ . If
+ is set,
+ hitting the rate limit will trigger no
+ action besides that the start will not
+ be
+ permitted.
+ causes a reboot following the normal
+ shutdown procedure (i.e. equivalent to
+ systemctl reboot),
+ causes
+ an forced reboot which will terminate
+ all processes forcibly but should
+ cause no dirty file systems on reboot
+ (i.e. equivalent to systemctl
+ reboot -f) and
+
+ causes immediate execution of the
+ reboot2
+ system call, which might result in
+ data loss. Defaults to
+ .
+
+
+
+
+
+
+ Compatibility Options
+
+ The following options are also available in the
+ [Service] section, but exist purely
+ for compatibility reasons and should not be used in
+ newly written service files.
+
+
+
+ SysVStartPriority=
+ Set the SysV start
+ priority to use to order this service
+ in relation to SysV services lacking
+ LSB headers. This option is only
+ necessary to fix ordering in relation
+ to legacy SysV services, that have no
+ ordering information encoded in the
+ script headers. As such it should only
+ be used as temporary compatibility
+ option, and not be used in new unit
+ files. Almost always it is a better
+ choice to add explicit ordering
+ directives via
+ After= or
+ Before=,
+ instead. For more details see
+ systemd.unit5. If
+ used, pass an integer value in the
+ range 0-99.
+
+
FsckPassNo=Set the fsck passno