X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd.service.xml;h=c57bce0ecf125446c834b409e4b0865f2ccc30d7;hp=e444efeb44e70d95aaec0971130b072f1ecc43f1;hb=dac051ad6893dcf3e1a69d40eea02682220e71d4;hpb=177b3ffedbfc1aea839324edeb1f35a1a754ef5b diff --git a/man/systemd.service.xml b/man/systemd.service.xml index e444efeb4..c57bce0ec 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 @@ -181,7 +183,9 @@ option configured implicitly gain dependencies on the dbus.socket - unit. + 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. @@ -311,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. @@ -448,7 +470,44 @@ 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" (i.e. the + "keep-alive ping"). 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. This allows + daemons to automatically enable the + keep-alive pinging logic if watchdog + support is enabled for the service. 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. @@ -470,16 +529,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. @@ -529,36 +591,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 , - , , . @@ -570,10 +608,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 @@ -657,10 +691,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 + . @@ -668,11 +708,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. @@ -690,6 +730,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