X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd.special.xml;h=863a029fe3bd74213de0eec931353e2164360092;hp=8a7242662d7ac6c94958e2266803f05464849b18;hb=e7176abbe818c75c6acd90227a7a84c3e05fee31;hpb=e3d84721dc9bcf9008f72dae03ff0f7842d0bb4b diff --git a/man/systemd.special.xml b/man/systemd.special.xml index 8a7242662..863a029fe 100644 --- a/man/systemd.special.xml +++ b/man/systemd.special.xml @@ -71,6 +71,7 @@ local-fs-pre.target, multi-user.target, network.target, + network-online.target, nss-lookup.target, nss-user-lookup.target, paths.target, @@ -99,7 +100,11 @@ system-update.target, time-sync.target, timers.target, - umount.target + umount.target, + -.slice, + system.slice, + user.slice, + machine.slice @@ -137,22 +142,6 @@ daemons. - - bluetooth.target - - This target is started - automatically as soon as a - Bluetooth controller is - plugged in or becomes - available at boot. - - This may be used to pull - in Bluetooth management - daemons dynamically when - Bluetooth hardware is - found. - - ctrl-alt-del.target @@ -329,7 +318,7 @@ dependencies of type Before= to sysroot-usr.mount - and all mount points fround in + and all mount points found in /etc/fstab that have the and @@ -380,18 +369,6 @@ option set. - - local-fs-pre.target - - This target unit is - automatically ordered before - all local mount points marked - with - (see above). It can be used to - execute certain units before - all local mounts. - - multi-user.target @@ -408,70 +385,72 @@ this unit during installation. This is best configured via - WantedBy=multi-uer.target + WantedBy=multi-user.target in the unit's [Install] section. - network.target + network-online.target - systemd automatically - adds dependencies of type - After= for - this target unit to all SysV - init script service units with - an LSB header referring to the - $network - facility. + Units that strictly + require a configured network + connection should pull in + network-online.target + (via a + Wants= type + dependency) and order + themselves after it. This + target unit is intended to + pull in a service that delays + further execution until the + network is sufficiently set + up. What precisely this + requires is left to the + implementation of the network + managing service. - This unit is supposed to - indicate when the network is - "up", but it is only very - loosely defined what that is - supposed to mean. Also see Note the distinction + between this unit and + network.target. This + unit is an active unit + (i.e. pulled in by the + consumer rather than the + provider of this + functionality) and pulls in a + service which possibly adds + substantial delays to further + execution. In contrast, + network.target + is a passive unit (i.e. pulled + in by the provider of the + functionality, rather than the + consumer) that usually does + not delay execution + much. Usually, + network.target + is part of the boot of most + systems, while + network-online.target + is not, except when at least + one unit requires it. Also see + Running Services After the Network is up for more information. - - - - nss-lookup.target - - A target that should be - used as synchronization point - for all host/network name - service lookups. Note that - this is independent of - user/group name lookups for - which - nss-user-lookup.target - should be used. systemd - automatically adds - dependencies of type - After= for - this target unit to all SysV - init script service units with - an LSB header referring to the - $named - facility. - - - - nss-user-lookup.target - - A target that should be - used as synchronization point - for all user/group name - service lookups. Note that - this is independent of - host/network name lookups for - which - nss-lookup.target - should be used. - + + All mount units for + remote network file systems + automatically pull in this + unit, and order themselves + after it. Note that networking + daemons that simply provide + functionality to other hosts + generally do not need to pull + this in. + paths.target @@ -511,22 +490,6 @@ unit, for compatibility with SysV. - - printer.target - - This target is started - automatically as soon as a - printer is plugged in or - becomes available at - boot. - - This may be used to pull - in printer management - daemons dynamically when - printer hardware is - found. - - reboot.target @@ -560,18 +523,6 @@ facility. - - remote-fs-pre.target - - This target unit is - automatically ordered before - all remote mount points marked - with - (see above). It can be used to - execute certain units before - all remote mounts. - - rescue.target @@ -598,19 +549,6 @@ - - rpcbind.target - - systemd automatically - adds dependencies of type - After= for - this target unit to all SysV - init script service units with - an LSB header referring to the - $portmap - facility. - - runlevel2.target runlevel3.target @@ -672,22 +610,6 @@ logic. - - smartcard.target - - This target is started - automatically as soon as a - smartcard controller is - plugged in or becomes - available at boot. - - This may be used to pull - in printer management - daemons dynamically when - smartcard hardware is - found. - - sockets.target @@ -711,21 +633,6 @@ section. - - sound.target - - This target is started - automatically as soon as a - sound card is plugged in or - becomes available at - boot. - - This may be used to pull - in audio management daemons - dynamically when printer - hardware is found. - - suspend.target @@ -784,19 +691,6 @@ Specification. - - time-sync.target - - systemd automatically - adds dependencies of type - After= for - this target unit to all SysV - init script service units with - an LSB header referring to the - $time - facility. - - timers.target @@ -842,6 +736,250 @@ + + Special System Units for Devices + + Some target units are automatically pulled in as + devices of certain kinds show up in the system. These + may be used to automatically activate various services + based on the specific type of the available + hardware. + + + + bluetooth.target + + This target is started + automatically as soon as a + Bluetooth controller is + plugged in or becomes + available at boot. + + This may be used to pull + in Bluetooth management + daemons dynamically when + Bluetooth hardware is + found. + + + + printer.target + + This target is started + automatically as soon as a + printer is plugged in or + becomes available at + boot. + + This may be used to pull + in printer management + daemons dynamically when + printer hardware is + found. + + + + smartcard.target + + This target is started + automatically as soon as a + smartcard controller is + plugged in or becomes + available at boot. + + This may be used to pull + in smartcard management + daemons dynamically when + smartcard hardware is + found. + + + + sound.target + + This target is started + automatically as soon as a + sound card is plugged in or + becomes available at + boot. + + This may be used to pull + in audio management daemons + dynamically when audio + hardware is found. + + + + + + + Special Passive System Units + + A number of special system targets are defined + that can be used to properly order boot-up of optional + services. These targets are generally not part of the + initial boot transaction, unless they are explicitly + pulled in by one of the implementing services. Note + specifically, that these passive + target units are generally not pulled in by the + consumer of a service, but by the provider of the + service. This means: a consuming service should order + itself after these targets (as appropriate), but not + pull it in. A providing service should order itself + before these targets (as appropriate) and pull it in + (via a Wants= type + dependency). + + Note that these passive units cannot be started + manually, i.e. systemctl start + time-sync.target will fail with an + error. They can only be pulled in by dependency. This + is enforced since they exist for ordering purposes + only and thus are not useful as only unit within a + transaction. + + + + local-fs-pre.target + + This target unit is + automatically ordered before + all local mount points marked + with + (see above). It can be used to + execute certain units before + all local mounts. + + + + network.target + + This unit is supposed to + indicate when network + functionality is available, + but it is only very weakly + defined what that is supposed + to mean, with one exception: + at shutdown, a unit that is + ordered after + network.target + will be stopped before the + network -- to whatever level + it might be set up then -- is + shut down. Also see Running + Services After the Network is + up for more + information. Also see + network-online.target + described above. + + systemd automatically + adds dependencies of type + After= for + this target unit to all SysV + init script service units with + an LSB header referring to the + $network + facility. + + + + + nss-lookup.target + + A target that should be + used as synchronization point + for all host/network name + service lookups. Note that + this is independent of + user/group name lookups for + which + nss-user-lookup.target + should be used. systemd + automatically adds + dependencies of type + After= for + this target unit to all SysV + init script service units with + an LSB header referring to the + $named + facility. + + + + nss-user-lookup.target + + A target that should be + used as synchronization point + for all user/group name + service lookups. Note that + this is independent of + host/network name lookups for + which + nss-lookup.target + should be used. + + + + remote-fs-pre.target + + This target unit is + automatically ordered before + all remote mount point units + (see above). It can be used to + run certain units before the + remote mounts are + established. Note that this + unit is generally not part of + the initial transaction, + unless the unit that wants to + be ordered before all remote + mounts pulls it in via a + Wants= type + dependency. If the unit wants + to be pulled in by the first + remote mount showing up, it + should use + network-online.target + (see above). + + Again, this target unit + is not + suitable for pulling in other + units, it is only useful for + ordering. + + + + rpcbind.target + + systemd automatically + adds dependencies of type + After= for + this target unit to all SysV + init script service units with + an LSB header referring to the + $portmap + facility. + + + + time-sync.target + + systemd automatically + adds dependencies of type + After= for + this target unit to all SysV + init script service units with + an LSB header referring to the + $time + facility. + + + + + Special User Units @@ -850,7 +988,13 @@ similar definitions as their system counterparts: default.target, shutdown.target, - sockets.target + sockets.target, + timers.target, + paths.target, + bluetooth.target, + printer.target, + smartcard.target, + sound.target. In addition the following special unit is understood only when systemd runs as service instance: @@ -867,8 +1011,8 @@ terminate the user service manager should start this unit. If systemd receives - SIGTERM or SIGINT when running - as user service daemon it will + SIGTERM or SIGINT when running + as user service daemon, it will start this unit. Normally, this pulls in @@ -882,6 +1026,63 @@ + + Special Slice Units + + There are four .slice units + which form the basis of the hierarchy for assignment + of resources for services, users, and virtual machines + or containers. + + + + -.slice + + The root slice is the + root of the hierarchy. It + usually does not contain units + directly, but may be used to + set defaults for the whole + tree. + + + + + system.slice + + By default, all services + services started by + systemd are + found in this slice. + + + + + user.slice + + By default, all user + processes and services started + on behalf of the user, + including the per-user systemd + instance are found in this + slice. + + + + + machine.slice + + By defalt, all virtual + machines and containers + registered with + systemd-machined + are found in this slice. + + + + + + See Also @@ -890,6 +1091,7 @@ systemd.service5, systemd.socket5, systemd.target5, + systemd.slice5, bootup7, systemd-fstab-generator8