X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fsystemd.service.xml;h=513b4e5900fc000c0df3619602edabb30bd86066;hb=092317d034df0dcde67e8696031557e82c3f7930;hp=ee4d3937565b97c6f35649170212f6f8c2ab56f8;hpb=ba035df230e41bf9d70ebb47915c9472b7884412;p=elogind.git diff --git a/man/systemd.service.xml b/man/systemd.service.xml index ee4d39375..513b4e590 100644 --- a/man/systemd.service.xml +++ b/man/systemd.service.xml @@ -180,7 +180,7 @@ acquired. Service units with this option configured implicitly gain dependencies on the - dbus.target + dbus.socket unit. Behaviour of @@ -215,6 +215,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 +247,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 +311,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 +456,31 @@ time span value such as "5min 20s". Pass 0 to disable the timeout logic. Defaults to - 60s. + 90s. + + + + 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. Defaults to 0s, + which disables this + feature. @@ -442,16 +502,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. @@ -530,7 +593,6 @@ processes of this service shall be killed. One of , - , , . @@ -542,10 +604,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 @@ -640,11 +698,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. @@ -689,6 +747,66 @@ for details. + + 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 + . + +