X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd.unit.xml;h=bf0deb1f97cd64d983a67daf1f9e0f25b58e4281;hp=6ea552e8b45868f1f543770bdbf2ef23fa32302d;hb=e45fc5e738b0b7700e8b4f3c4b25c58a49b44b27;hpb=67826132adfdf626413f08fb664debd4a7ec35b7 diff --git a/man/systemd.unit.xml b/man/systemd.unit.xml index 6ea552e8b..bf0deb1f9 100644 --- a/man/systemd.unit.xml +++ b/man/systemd.unit.xml @@ -73,6 +73,7 @@ $XDG_CONFIG_HOME/systemd/user/* $HOME/.config/systemd/user/* /etc/systemd/user/* +$XDG_RUNTIME_DIR/systemd/user/* /run/systemd/user/* $XDG_DATA_HOME/systemd/user/* $HOME/.local/share/systemd/user/* @@ -180,10 +181,10 @@ foo.service.wants/ may exist. All unit files symlinked from such a directory are implicitly added as dependencies of type - Wanted= to the unit. This is useful + Wants= to the unit. This is useful to hook units into the start-up of other units, without having to modify their unit files. For details - about the semantics of Wanted=, see + about the semantics of Wants=, see below. The preferred way to create symlinks in the .wants/ directory of a unit file is with the enable command of the @@ -210,6 +211,10 @@ template .d/ subdirectory and reads its .conf files. + + Note that while systemd offers a flexible dependency system between units it is recommended to use this functionality only sparingly and instead rely @@ -224,12 +229,17 @@ the file system namespace. If this applies, a special way to escape the path name is used, so that the result is usable as part of a filename. Basically, - given a path, "/" is replaced by "-", and all - unprintable characters and the "-" are replaced by - C-style "\x20" escapes. The root directory "/" is - encoded as single dash, while otherwise the initial - and ending "/" is removed from all paths during - transformation. This escaping is reversible. + given a path, "/" is replaced by "-" and all other + characters which are not ASCII alphanumerics are + replaced by C-style "\x2d" escapes (except that "_" + is never replaced and "." is only replaced when it + would be the first character in the escaped path). + The root directory "/" is encoded as single dash, + while otherwise the initial and ending "/" are removed + from all paths during transformation. This escaping + is reversible. Properly escaped paths can be generated + using the systemd-escape1 + command. Optionally, units may be instantiated from a template file at runtime. This allows creation of @@ -343,6 +353,10 @@ /etc/systemd/user Local configuration + + $XDG_RUNTIME_DIR/systemd/user + Runtime units (only used when $XDG_RUNTIME_DIR is set) + /run/systemd/user Runtime units @@ -883,20 +897,22 @@ JobTimeoutSec= - - When clients are - waiting for a job of this unit to - complete, time out after the specified - time. If this time limit is reached, - the job will be cancelled, the unit - however will not change state or even - enter the failed - mode. This value defaults to 0 (job - timeouts disabled), except for device + JobTimeoutAction= + JobTimeoutRebootArgument= + + When a job for this + unit is queued a time-out may be + configured. If this time limit is + reached, the job will be cancelled, + the unit however will not change state + or even enter the + failed mode. This + value defaults to 0 (job timeouts + disabled), except for device units. NB: this timeout is independent from any unit-specific timeout (for example, the timeout set with - Timeout= in service + StartTimeoutSec= in service units) as the job timeout has no effect on the unit itself, only on the job that might be pending for it. Or @@ -906,7 +922,22 @@ timeout set with this option however is useful to abort only the job waiting for the unit state to - change. + change. + + JobTimeoutAction= + optionally configures an additional + action to take when the time-out is + hit. It takes the same values as the + per-service + StartLimitAction= + setting, see + systemd.service5 + for details. Defaults to + . JobTimeoutRebootArgument= + configures an optional reboot string + to pass to the + reboot2 + system call. @@ -928,7 +959,11 @@ ConditionDirectoryNotEmpty= ConditionFileNotEmpty= ConditionFileIsExecutable= - ConditionNull= + + Before starting a unit verify that the specified condition is @@ -1013,13 +1048,17 @@ openvz, lxc, lxc-libvirt, - systemd-nspawn to - test against a specific - implementation. If multiple - virtualization technologies are nested, - only the innermost is considered. The - test may be negated by prepending an - exclamation mark. + systemd-nspawn, + docker to test + against a specific implementation. See + systemd-detect-virt1 + for a full list of known + virtualization technologies and their + identifiers. If multiple + virtualization technologies are + nested, only the innermost is + considered. The test may be negated by + prepending an exclamation mark. ConditionHost= may be used to match against the @@ -1054,14 +1093,15 @@ ConditionSecurity= may be used to check whether the given security module is enabled on the - system. Currently the recognized values - values are selinux, + system. Currently the recognized + values values are + selinux, apparmor, - ima and - smack. - The test may be negated by prepending - an exclamation - mark. + ima, + smack and + audit. The test may + be negated by prepending an + exclamation mark. ConditionCapability= may be used to check whether the given @@ -1203,15 +1243,6 @@ exists, is a regular file and marked executable. - Finally, - ConditionNull= may - be used to add a constant condition - check value to the unit. It takes a - boolean argument. If set to - false, the condition - will always fail, otherwise - succeed. - If multiple conditions are specified, the unit will be executed if all of them apply (i.e. a logical AND @@ -1237,6 +1268,38 @@ have no effect. + + AssertArchitecture= + AssertVirtualization= + AssertHost= + AssertKernelCommandLine= + AssertSecurity= + AssertCapability= + AssertACPower= + AssertNeedsUpdate= + AssertFirstBoot= + AssertPathExists= + AssertPathExistsGlob= + AssertPathIsDirectory= + AssertPathIsSymbolicLink= + AssertPathIsMountPoint= + AssertPathIsReadWrite= + AssertDirectoryNotEmpty= + AssertFileNotEmpty= + AssertFileIsExecutable= + + Similar to the + ConditionArchitecture=, + ConditionVirtualization=, + ... condition settings described above + these settings add assertion checks to + the start-up of the unit. However, + unlike the conditions settings any + assertion setting that is not met + results in failure of the start + job it was triggered by. + + SourcePath= A path to a @@ -1498,6 +1561,16 @@ + + Please note that specifiers + %U, %h, + %s are mostly useless when systemd + is running in system mode. PID 1 cannot query the + user account database for information, so the + specifiers only work as shortcuts for things which are + already specified in a different way in the unit + file. They are fully functional when systemd is + running in mode. @@ -1519,7 +1592,7 @@ systemd.scope5, systemd.slice5, systemd.time7, - systemd-verify1, + systemd-analyze1, capabilities7, systemd.directives7, uname1