X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd.unit.xml;h=f72b947dca052ffefc7fe99d0eb344638a9b829d;hp=250989fe0f0b044f6234fe58b4ec6c817bb85d7c;hb=008d348eddce97ef807fb908484efb0ade3172c5;hpb=2528a7a62c4ad9b2f4773b608d208239299da50c
diff --git a/man/systemd.unit.xml b/man/systemd.unit.xml
index 250989fe0..f72b947dc 100644
--- a/man/systemd.unit.xml
+++ b/man/systemd.unit.xml
@@ -182,13 +182,30 @@
%i specifier in many of the
configuration options. Other specifiers that may be
used are %n, %N,
- %p, %P and
- %I, for the full unit name, the
- unescaped unit name, the prefix name, the unescaped
- prefix name and the unescaped instance name,
- respectively. The prefix name here refers to the
- string before the @, i.e. "getty" in the example
- above, where "tty3" is the instance name.
+ %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.
+
+ If a unit file is empty (i.e. has the file size
+ 0) or is symlinked to /dev/null
+ its configuration will not be loaded and it appears
+ with a load state of masked, and
+ cannot be activated. Use this as an effective way to
+ fully disable a unit, making it impossible to start it
+ even manually.
+
+ The unit file format is covered by the
+ Interface
+ Stability Promise.
@@ -418,8 +435,9 @@
Lists one or more
units that are activated when this
- unit fails (i.e. enters maintenance
- state).
+ unit enters the
+ 'failed'
+ state.
@@ -552,24 +570,67 @@
time. If this time limit is reached
the job will be cancelled, the unit
however will not change state or even
- enter maintenance 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
+ 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
- units) as the job timeout has no effect
- on the unit itself, only on the job
- that might be pending for it. Or in
- other words: unit-specific timeouts
+ units) as the job timeout has no
+ effect on the unit itself, only on the
+ job that might be pending for it. Or
+ in other words: unit-specific timeouts
are useful to abort unit state
changes, and revert them. The job
timeout set with this option however
- is useful to abort only the job waiting
- for the unit state to change.
+ is useful to abort only the job
+ waiting for the unit state to
+ change.
+
+ ConditionPathExists=
+ ConditionKernelCommandLine=
+
+ Before starting a unit
+ verify that the specified condition is
+ true. With
+ ConditionPathExists=
+ a file existance condition can be
+ checked before a unit is started. If
+ the specified absolute path name does
+ 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
+ the time the queued start job is to be
+ executed. If the absolute path name
+ passed to
+ ConditionPathExists=
+ is prefixed with an exclamation mark
+ (!), the test is negated, and the unit
+ only started if the path does not
+ exist. Similarly
+ ConditionKernelCommandLine=
+ may be used to check whether a
+ specific kernel command line option is
+ set (or if prefixed with the
+ exclamation mark unset). The argument
+ must either be a single word, or an
+ assignment (i.e. two words, seperated
+ by the equality sign). In the former
+ case the kernel command line is search
+ for the word appearing as is, or as
+ left hand side of an assignment. In
+ the latter case the exact assignment
+ is looked for with right and left hand
+ side matching. If multiple conditions
+ are specified the unit will be
+ executed iff at least one of them
+ apply (i.e. a logical OR is
+ applied).
+
Unit file may include a [Install] section, which