X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd.unit.xml;h=54903fb52fca93eb43e4ac0cb75e0c3df99c1284;hp=39862cf7c89162e510f1bb35eb820c1aa47f5851;hb=1f16b4a6c496288aa62dc2ac973f88ca6c801b5d;hpb=d257ddef22ff1a1b98e6172799819e6511b1bcfb diff --git a/man/systemd.unit.xml b/man/systemd.unit.xml index 39862cf7c..54903fb52 100644 --- a/man/systemd.unit.xml +++ b/man/systemd.unit.xml @@ -352,7 +352,7 @@ unexpectedly disappear if a service terminates on its own choice, a device is unplugged or a mount point - unmounted with involvement of + unmounted without involvement of systemd. @@ -573,7 +573,9 @@ ConditionPathExists= + ConditionDirectoryNotEmpty= ConditionKernelCommandLine= + ConditionVirtualization= ConditionNull= Before starting a unit @@ -594,14 +596,19 @@ is prefixed with an exclamation mark (!), the test is negated, and the unit only started if the path does not - exist. Similarly + exist. ConditionDirectoryNotEmpty= + is similar to + ConditionPathExists= + but verifies whether a certain path is + exists and is a non-empty + directory. 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 + assignment (i.e. two words, separated by the equality sign). In the former case the kernel command line is searched for the word appearing as is, @@ -609,7 +616,24 @@ assignment. In the latter case the exact assignment is looked for with right and left hand side - matching. Finally, + matching. ConditionVirtualization= + may be used to check whether the + system is executed in a virtualized + environment and optionally test + whether it is a specific + implementation. Takes either boolean + value to check if being executed in + any virtual environment or one of the + qemu, + kvm, + vmware, + microsoft, + oracle, + xen, + openvz to test + against a specific implementation. 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 @@ -617,10 +641,21 @@ false the condition will always fail, otherwise succeed. If multiple conditions are - specified the unit will be executed - iff at least one of them applies - (i.e. a logical OR is - applied). + specified the unit will be executed if + all of them apply (i.e. a logical AND + is applied). Condition checks can be + prefixed with a pipe symbol (|) in + which case a condition becomes a + triggering condition. If at least one + triggering condition is defined for a + unit then the unit will be executed if + at least one of the triggering + conditions apply and all of the + non-triggering conditions. If you + prefix an argument with the pipe + symbol and an exclamation mark the + pipe symbol must be passed first, the + exclamation second.