X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd.unit.xml;h=17141576d052e9fea76e1f977d0252d72bdddd1c;hp=47c50315ae941e58d5b923da3b8e89a355d37d8c;hb=693093c6db9d8510729b7566e74182b4ff50e31c;hpb=1a13e31d275430ffba713c8a68ee7f22093c29e0 diff --git a/man/systemd.unit.xml b/man/systemd.unit.xml index 47c50315a..17141576d 100644 --- a/man/systemd.unit.xml +++ b/man/systemd.unit.xml @@ -60,7 +60,9 @@ target.target, path.path, timer.timer, - snapshot.snapshot + snapshot.snapshot, + slice.slice, + scope.scope /etc/systemd/system/* /run/systemd/system/* @@ -68,7 +70,8 @@ ... - /etc/systemd/user/* + $HOME/.config/systemd/user/* +/etc/systemd/user/* /run/systemd/user/* /usr/lib/systemd/user/* ... @@ -81,12 +84,15 @@ A unit configuration file encodes information about a service, a socket, a device, a mount point, an automount point, a swap file or partition, a start-up - target, a file system path, or a timer controlled and - supervised by - systemd1. The - syntax is inspired by systemd1, + a temporary system state snapshot, a resource + management slice or a group of externally created + processes. The syntax is inspired by XDG - Desktop Entry Specification .desktop files, which are in turn + Desktop Entry Specification + .desktop files, which are in turn inspired by Microsoft Windows .ini files. @@ -110,6 +116,8 @@ systemd.path5, systemd.timer5, systemd.snapshot5. + systemd.slice5. + systemd.scope5. Unit files are loaded from a set of paths @@ -173,7 +181,7 @@ Along with a unit file foo.service a directory foo.service.d/ may exist. All - files with the suffix .conf from + files with the suffix .conf from this directory will be parsed after the file itself is parsed. This is useful to alter or add configuration settings to a unit, without having to modify their @@ -182,7 +190,7 @@ directive. If a line starts with - followed by a file name, the specified file will be + followed by a filename, the specified file will be parsed at this point. Make sure that the file that is included has the appropriate section headers before any directives. @@ -195,12 +203,12 @@ in a both simpler and more flexible system. Some unit names reflect paths existing in the - file system name space. Example: a device unit + file system namespace. Example: a device unit dev-sda.device refers to a device - with the device node /dev/sda in + with the device node /dev/sda in 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 file name. Basically, + 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 @@ -214,9 +222,9 @@ systemd looks for a unit configuration file it will first search for the literal unit name in the filesystem. If that yields no success and the unit - name contains an @ character, systemd will look for a + name contains an @ character, systemd will look for a unit template that shares the same name but with the - instance string (i.e. the part between the @ character + instance string (i.e. the part between the @ character and the suffix) removed. Example: if a service getty@tty3.service is requested and no file by that name is found, systemd will look @@ -245,16 +253,15 @@ - Unit load path + Unit Load Path Unit files are loaded from a set of paths determined during compilation, described in the two - tables below. Unit files found in directories higher - in the hierarchy override files with the same name - lower in the hierarchy, thus allowing overrides. - + tables below. Unit files found in directories listed + earlier override files with the same name in + directories lower in the list. - When systemd is running in session mode + When systemd is running in user mode () and the variable $SYSTEMD_UNIT_PATH is set, this contents of this variable overrides the unit load @@ -276,43 +283,17 @@ - - /run/systemd/generator.early - Generated units - - - &SYSTEM_CONFIG_UNIT_PATH; - Local configuration - /etc/systemd/system + Local configuration - /run/systemd/systemd - Volatile units - - - /run/systemd/generator - Generated units - - - /usr/local/lib/systemd/system - Units for local packages - - - &systemunitdir; - Systemd package configuration + /run/systemd/system + Runtime units /usr/lib/systemd/system - Units for installed packages - - - /lib/systemd/system - - - /run/systemd/generator.late - Generated units + Units of installed packages @@ -320,7 +301,7 @@ - Load path when running in session mode (<option>--user</option>). + Load path when running in user mode (<option>--user</option>). @@ -334,60 +315,32 @@ - /tmp/systemd-generator.early.XXXXXX - Generated units - - - &USER_CONFIG_UNIT_PATH; - Local configuration + $HOME/.config/systemd/user + User configuration /etc/systemd/user + Local configuration /run/systemd/user - Volatile units - - - /tmp/systemd-generator.XXXXXX - Generated units - - - /usr/local/lib/systemd/user - Units for local packages - - - /usr/local/share/systemd/user - - - &userunitdir; - Systemd package configuration + Runtime units /usr/lib/systemd/user - Units for installed packages - - - /usr/share/systemd/user - - - /tmp/systemd-generator.late.XXXXXX - Generated units + Units of installed packages
- Note: the paths listed above are set at - compilation time and differ between distributions. The - "authorative" list is printed by - systemd at during start and daemon - reconfiguration. - Additional units might be loaded into systemd ("linked") from directories not on the unit load path. See the link command for - systemctl1. + systemctl1. Also, + some units are dynamically created via generators + Generators. @@ -406,12 +359,20 @@ describing the unit. This is intended for use in UIs to show descriptive information along with the unit - name.
+ name. The description should contain a name + that means something to the end user. + Apache2 Web Server is a good + example. Bad examples are + high-performance light-weight HTTP + server (too generic) or + Apache2 (too specific and + meaningless for people who do not know + Apache).
Documentation= - A space separated list + A space-separated list of URIs referencing documentation for this unit or its configuration. Accepted are only URIs @@ -422,7 +383,7 @@ info:, man:. For more information about the syntax of these - URIs see + URIs, see uri7. The URIs should be listed in order of relevance, starting with the most @@ -434,7 +395,7 @@ option may be specified more than once in which case the specified list of URIs is merged. If the empty string is - assigned to this option the list is + assigned to this option, the list is reset and all prior assignments will have no effect. @@ -675,7 +636,7 @@ Lists one or more units that are activated when this unit enters the - 'failed' + failed state. @@ -698,8 +659,8 @@ RequiresMountsFor= - Takes a space - separated list of absolute paths. Automatically + Takes a space-separated + list of absolute paths. Automatically adds dependencies of type Requires= and After= for all @@ -826,7 +787,7 @@ highly recommended to leave this option enabled for the majority of common units. If set to - this option + , this option does not disable all implicit dependencies, just non-essential ones. @@ -841,7 +802,7 @@ time. If this time limit is reached the job will be cancelled, the unit however will not change state or even - enter the 'failed' + enter the failed mode. This value defaults to 0 (job timeouts disabled), except for device units. NB: this timeout is independent @@ -900,7 +861,7 @@ to ConditionPathExists= is prefixed with an exclamation mark - ('!'), the test is negated, and the unit + (!), the test is negated, and the unit is only started if the path does not exist. @@ -969,7 +930,7 @@ exclamation mark unset). The argument must either be a single word, or an assignment (i.e. two words, separated - '='). In the former + =). In the former case the kernel command line is searched for the word appearing as is, or as left hand side of an @@ -998,6 +959,7 @@ xen, bochs, chroot, + uml, openvz, lxc, lxc-libvirt, @@ -1012,8 +974,11 @@ ConditionSecurity= may be used to check whether the given security module is enabled on the - system. Currently the only recognized - value is selinux. + system. Currently the recognized values + values are selinux, + apparmor, + ima and + smack. The test may be negated by prepending an exclamation mark. @@ -1033,11 +998,11 @@ ConditionHost= may be used to match against the - host name or machine ID of the - host. This either takes a host name + hostname or machine ID of the + host. This either takes a hostname string (optionally with shell style globs) which is tested against the - locally set host name as returned by + locally set hostname as returned by gethostname2, or a machine ID formatted as string (see @@ -1134,45 +1099,73 @@ time, systemctl enable will create symlinks from these names - to the unit file name. + to the unit filename.
WantedBy= RequiredBy= - Installs a symlink in - the .wants/ - or .requires/ - subdirectory for a unit, respectively. This has the - effect that when the listed unit name - is activated the unit listing it is - activated - too. WantedBy=foo.service + A symbolic link is + created in the + .wants/ or + .requires/ directory + of the listed unit when this unit is + activated by systemctl + enable. This has the effect + that a dependency of type + Wants= or + Requires= is added + from the listed unit to the current + unit. The primary result is that the + current unit will be started when the + listed unit is started. See the + description of + Wants= and + Requires= in the + [Unit] section for details. + + WantedBy=foo.service in a service bar.service is mostly equivalent to Alias=foo.service.wants/bar.service - in the same file. + in the same file. In case of template + units, systemctl enable + must be called with an instance name, and + this instance will be added to the + .wants/ or + .requires/ list + of the listed unit. + E.g. WantedBy=getty.target + in a service + getty@.service + will result in systemctl + enable getty@tty2.service + creating a + getty.target.wants/getty@tty2.service + link to getty@.service. + Also= Additional units to - install when this unit is - installed. If the user requests - installation of a unit with this - option configured, + install/deinstall when this unit is + installed/deinstalled. If the user + requests installation/deinstallation + of a unit with this option configured, systemctl enable - will automatically install units - listed in this option as + and systemctl + disable will automatically + install/uninstall units listed in this option as well. The following specifiers are interpreted in the - Install section: %n, %N, %p, %i, %U, %u, %m, %H, %b. + Install section: %n, %N, %p, %i, %U, %u, %m, %H, %b, %v. For their meaning see the next section. @@ -1223,7 +1216,7 @@ %i Instance name - For instantiated units: this is the string between the @ character and the suffix. + For instantiated units: this is the string between the @ character and the suffix. %I @@ -1232,8 +1225,8 @@ %f - Unescaped file name - This is either the unescaped instance name (if applicable) with / prepended (if applicable), or the prefix name similarly prepended with /. + Unescaped filename + This is either the unescaped instance name (if applicable) with / prepended (if applicable), or the prefix name similarly prepended with /. %c @@ -1242,13 +1235,13 @@ %r - Root control group path of systemd - + Root control group path where units are placed. + For system instances this usually resolves to /system, except in containers, where the path might be prefixed with the container's root control group. %R - Parent directory of the root control group path of systemd - + Parent directory of the control group path where units are placed. + For system instances this usually resolves to /, except in containers, where this resolves to the container's root directory. This specifier is particularly useful in the ControlGroup= setting (see systemd.exec5). %t @@ -1273,14 +1266,7 @@ %s User shell - This is the shell of the configured - user of the unit, or (if none is set) the user - running the systemd instance. If the user is - root (UID equal to 0), the - shell configured in account database is - ignored and /bin/sh is - always used. - + This is the shell of the configured user of the unit, or (if none is set) the user running the systemd instance. If the user is root (UID equal to 0), the shell configured in account database is ignored and /bin/sh is always used. %m @@ -1295,7 +1281,12 @@ %H Host name - The host name of the running system. + The hostname of the running system. + + + %v + Kernel release + Identical to uname -r output. %% @@ -1323,9 +1314,12 @@ systemd.path5, systemd.timer5, systemd.snapshot5, + systemd.scope5, + systemd.slice5, systemd.time7, capabilities7, - systemd.directives7 + systemd.directives7, + uname1