X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd.unit.xml;h=4437510df7c08fcba821aba97416df3e50ee5ff7;hp=47ddece3149a173b8a861296942a230a5302349a;hb=8571962ca31a468959eedce26fda278587327ba5;hpb=c61e77d3eab2385fc7bbae0edef6b3c583a70ca8 diff --git a/man/systemd.unit.xml b/man/systemd.unit.xml index 47ddece31..4437510df 100644 --- a/man/systemd.unit.xml +++ b/man/systemd.unit.xml @@ -180,22 +180,86 @@ and no file by that name is found, systemd will look for getty@.service and instantiate a service from that configuration file if - it is found. To refer to the instance string from + it is found. + + To refer to the instance string from within the configuration file you may use the special %i specifier in many of the - configuration options. Other specifiers that may be - used are %n, %N, - %p, %P, - %I and %f, for - the full unit name, the unescaped unit name, the - prefix name, the unescaped prefix name, the unescaped - instance name and the unescaped filename, - respectively. The unescaped filename is either the - unescaped instance name (if set) with / prepended (if - necessary), or the prefix name similarly prepended - with /. The prefix name here refers to the string - before the @, i.e. "getty" in the example above, where - "tty3" is the instance name. + configuration options. Other specifiers exist, the + full list is: + + + Specifiers available in unit files + + + + + + + Specifier + Meaning + Details + + + + + %n + Full unit name + + + + %N + Unescaped full unit name + + + + %p + Prefix name + This refers to the string before the @, i.e. "getty" in the example above, where "tty3" is the instance name. + + + %P + Unescaped prefix name + + + + %i + Instance name + This is the string between the @ character and the suffix. + + + %I + Unescaped instance name + + + + %f + Unescaped file name + This is either the unescaped instance name (if set) with / prepended (if necessary), or the prefix name similarly prepended with /. + + + %c + Control group path of the unit + + + + %r + Root control group path of systemd + + + + %R + Parent directory of the root control group path of systemd + + + + %t + Runtime socket dir + This is either /run (for the system manager) or $XDG_RUNTIME_DIR (for user managers). + + + +
If a unit file is empty (i.e. has the file size 0) or is symlinked to /dev/null @@ -444,6 +508,44 @@ state. + + OnFailureIsolate= + + Takes a boolean + argument. If the + unit listed in + OnFailure= will be + enqueued in isolation mode, i.e. all + units that are not its dependency will + be stopped. If this is set only a + single unit may be listed in + OnFailure=. Defaults + to + . + + + + IgnoreOnIsolate= + + Takes a boolean + argument. If + this unit will not be stopped when + isolating another unit. Defaults to + . + + + + IgnoreOnSnapshot= + + Takes a boolean + argument. If + this unit will not be included in + snapshots. Defaults to + for device and + snapshot units, + for the others. + + StopWhenUnneeded= @@ -561,20 +663,24 @@ ConditionPathExists= + ConditionPathExistsGlob= ConditionPathIsDirectory= + ConditionPathIsMountPoint= ConditionDirectoryNotEmpty= + ConditionFileIsExecutable= ConditionKernelCommandLine= ConditionVirtualization= + ConditionSecurity= ConditionNull= Before starting a unit verify that the specified condition is true. With ConditionPathExists= - a file existance condition can be + a file existence condition can be checked before a unit is started. If the specified absolute path name does - not exist startup of a unit will not + not exist, startup of a unit will not actually happen, however the unit is still useful for ordering purposes in this case. The condition is checked at @@ -584,12 +690,29 @@ ConditionPathExists= is prefixed with an exclamation mark (!), the test is negated, and the unit - only started if the path does not - exist. ConditionPathIsDirectory= + is only started if the path does not + exist. + ConditionPathExistsGlob= + works in a similar way, but checks for + the existence of at least one file or + directory matching the specified + globbing + pattern. ConditionPathIsDirectory= + is similar to + ConditionPathExists= + but verifies whether a certain path + exists and is a + directory. ConditionPathIsMountPoint= + is similar to + ConditionPathExists= + but verifies whether a certain path + exists and is a mount + point. ConditionFileIsExecutable= is similar to ConditionPathExists= but verifies whether a certain path - exists and is a directory. + exists, is a regular file and marked + executable. ConditionDirectoryNotEmpty= is similar to ConditionPathExists= @@ -628,7 +751,14 @@ openvz to test against a specific implementation. The test may be negated by prepending an - exclamation mark. Finally, + exclamation mark. + ConditionSecurity= + may be used to check whether the given + security module is enabled on the + system. Currently the only recognized + value is selinux. + The test may be negated by prepending + an exclamation mark. Finally, ConditionNull= may be used to add a constant condition check value to the unit. It takes a @@ -650,7 +780,8 @@ prefix an argument with the pipe symbol and an exclamation mark the pipe symbol must be passed first, the - exclamation second. + exclamation second. All path checks + follow symlinks.