mirror of
https://git.proxmox.com/git/systemd
synced 2025-05-29 13:52:54 +00:00
387 lines
40 KiB
HTML
387 lines
40 KiB
HTML
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd.special</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
|
|
a.headerlink {
|
|
color: #c60f0f;
|
|
font-size: 0.8em;
|
|
padding: 0 4px 0 4px;
|
|
text-decoration: none;
|
|
visibility: hidden;
|
|
}
|
|
|
|
a.headerlink:hover {
|
|
background-color: #c60f0f;
|
|
color: white;
|
|
}
|
|
|
|
h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
|
|
visibility: visible;
|
|
}
|
|
</style><a href="index.html">Index </a>·
|
|
<a href="systemd.directives.html">Directives </a>·
|
|
<a href="../python-systemd/index.html">Python </a>·
|
|
<a href="../libudev/index.html">libudev </a>·
|
|
<a href="../libudev/index.html">gudev </a><span style="float:right">systemd 219</span><hr><div class="refentry"><a name="systemd.special"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.special — Special systemd units</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">basic.target</code>,
|
|
<code class="filename">bluetooth.target</code>,
|
|
<code class="filename">ctrl-alt-del.target</code>,
|
|
<code class="filename">cryptsetup.target</code>,
|
|
<code class="filename">cryptsetup-pre.target</code>,
|
|
<code class="filename">dbus.service</code>,
|
|
<code class="filename">dbus.socket</code>,
|
|
<code class="filename">default.target</code>,
|
|
<code class="filename">display-manager.service</code>,
|
|
<code class="filename">emergency.target</code>,
|
|
<code class="filename">exit.target</code>,
|
|
<code class="filename">final.target</code>,
|
|
<code class="filename">getty.target</code>,
|
|
<code class="filename">graphical.target</code>,
|
|
<code class="filename">halt.target</code>,
|
|
<code class="filename">hibernate.target</code>,
|
|
<code class="filename">hybrid-sleep.target</code>,
|
|
<code class="filename">initrd-fs.target</code>,
|
|
<code class="filename">kbrequest.target</code>,
|
|
<code class="filename">kexec.target</code>,
|
|
<code class="filename">local-fs.target</code>,
|
|
<code class="filename">local-fs-pre.target</code>,
|
|
<code class="filename">multi-user.target</code>,
|
|
<code class="filename">network.target</code>,
|
|
<code class="filename">network-online.target</code>,
|
|
<code class="filename">network-pre.target</code>,
|
|
<code class="filename">nss-lookup.target</code>,
|
|
<code class="filename">nss-user-lookup.target</code>,
|
|
<code class="filename">paths.target</code>,
|
|
<code class="filename">poweroff.target</code>,
|
|
<code class="filename">printer.target</code>,
|
|
<code class="filename">reboot.target</code>,
|
|
<code class="filename">remote-fs.target</code>,
|
|
<code class="filename">remote-fs-pre.target</code>,
|
|
<code class="filename">rescue.target</code>,
|
|
<code class="filename">initrd-root-fs.target</code>,
|
|
<code class="filename">rpcbind.target</code>,
|
|
<code class="filename">runlevel2.target</code>,
|
|
<code class="filename">runlevel3.target</code>,
|
|
<code class="filename">runlevel4.target</code>,
|
|
<code class="filename">runlevel5.target</code>,
|
|
<code class="filename">shutdown.target</code>,
|
|
<code class="filename">sigpwr.target</code>,
|
|
<code class="filename">sleep.target</code>,
|
|
<code class="filename">smartcard.target</code>,
|
|
<code class="filename">sockets.target</code>,
|
|
<code class="filename">sound.target</code>,
|
|
<code class="filename">suspend.target</code>,
|
|
<code class="filename">swap.target</code>,
|
|
<code class="filename">sysinit.target</code>,
|
|
<code class="filename">syslog.socket</code>,
|
|
<code class="filename">system-update.target</code>,
|
|
<code class="filename">time-sync.target</code>,
|
|
<code class="filename">timers.target</code>,
|
|
<code class="filename">umount.target</code>,
|
|
<code class="filename">-.slice</code>,
|
|
<code class="filename">system.slice</code>,
|
|
<code class="filename">user.slice</code>,
|
|
<code class="filename">machine.slice</code></p></div><div class="refsect1"><a name="idm140275576377296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A few units are treated specially by systemd. They have
|
|
special internal semantics and cannot be renamed.</p></div><div class="refsect1"><a name="idm140275576375984"></a><h2 id="Special System Units">Special System Units<a class="headerlink" title="Permalink to this headline" href="#Special%20System%20Units">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="basic.target"><span class="term"><code class="filename">basic.target</code></span><a class="headerlink" title="Permalink to this term" href="#basic.target">¶</a></dt><dd><p>A special target unit covering basic boot-up.</p><p>systemd automatically adds dependencies of the types
|
|
<code class="varname">Requires=</code> and <code class="varname">After=</code>
|
|
for this target unit to all services (except for those with
|
|
<code class="varname">DefaultDependencies=no</code>).</p><p>Usually this should pull-in all mount points, swap
|
|
devices, sockets, timers, and path units and other basic
|
|
initialization necessary for general purpose daemons.</p></dd><dt id="ctrl-alt-del.target"><span class="term"><code class="filename">ctrl-alt-del.target</code></span><a class="headerlink" title="Permalink to this term" href="#ctrl-alt-del.target">¶</a></dt><dd><p>systemd starts this target whenever Control+Alt+Del is
|
|
pressed on the console. Usually this should be aliased
|
|
(symlinked) to <code class="filename">reboot.target</code>.</p></dd><dt id="cryptsetup.target"><span class="term"><code class="filename">cryptsetup.target</code></span><a class="headerlink" title="Permalink to this term" href="#cryptsetup.target">¶</a></dt><dd><p>A target that pulls in setup services for all
|
|
encrypted block devices.</p></dd><dt id="dbus.service"><span class="term"><code class="filename">dbus.service</code></span><a class="headerlink" title="Permalink to this term" href="#dbus.service">¶</a></dt><dd><p>A special unit for the D-Bus bus daemon. As soon as
|
|
this service is fully started up systemd will connect to it
|
|
and register its service.</p></dd><dt id="dbus.socket"><span class="term"><code class="filename">dbus.socket</code></span><a class="headerlink" title="Permalink to this term" href="#dbus.socket">¶</a></dt><dd><p>A special unit for the D-Bus system bus socket. All
|
|
units with <code class="varname">Type=dbus</code> automatically gain a
|
|
dependency on this unit.</p></dd><dt id="default.target"><span class="term"><code class="filename">default.target</code></span><a class="headerlink" title="Permalink to this term" href="#default.target">¶</a></dt><dd><p>The default unit systemd starts at bootup. Usually
|
|
this should be aliased (symlinked) to
|
|
<code class="filename">multi-user.target</code> or
|
|
<code class="filename">graphical.target</code>.</p><p>The default unit systemd starts at bootup can be
|
|
overridden with the <code class="varname">systemd.unit=</code> kernel
|
|
command line option.</p></dd><dt id="display-manager.service"><span class="term"><code class="filename">display-manager.service</code></span><a class="headerlink" title="Permalink to this term" href="#display-manager.service">¶</a></dt><dd><p>The display manager service. Usually this should be
|
|
aliased (symlinked) to <code class="filename">gdm.service</code> or a
|
|
similar display manager service.</p></dd><dt id="emergency.target"><span class="term"><code class="filename">emergency.target</code></span><a class="headerlink" title="Permalink to this term" href="#emergency.target">¶</a></dt><dd><p>A special target unit that starts an emergency shell
|
|
on the main console. This unit is supposed to be used with
|
|
the kernel command line option
|
|
<code class="varname">systemd.unit=</code> and has otherwise little
|
|
use.
|
|
</p></dd><dt id="final.target"><span class="term"><code class="filename">final.target</code></span><a class="headerlink" title="Permalink to this term" href="#final.target">¶</a></dt><dd><p>A special target unit that is used during the shutdown
|
|
logic and may be used to pull in late services after all
|
|
normal services are already terminated and all mounts
|
|
unmounted.
|
|
</p></dd><dt id="getty.target"><span class="term"><code class="filename">getty.target</code></span><a class="headerlink" title="Permalink to this term" href="#getty.target">¶</a></dt><dd><p>A special target unit that pulls in statically
|
|
configured local TTY <code class="filename">getty</code> instances.
|
|
</p></dd><dt id="graphical.target"><span class="term"><code class="filename">graphical.target</code></span><a class="headerlink" title="Permalink to this term" href="#graphical.target">¶</a></dt><dd><p>A special target unit for setting up a graphical login
|
|
screen. This pulls in
|
|
<code class="filename">multi-user.target</code>.</p><p>Units that are needed for graphical logins shall add
|
|
<code class="varname">Wants=</code> dependencies for their unit to
|
|
this unit (or <code class="filename">multi-user.target</code>) during
|
|
installation. This is best configured via
|
|
<code class="varname">WantedBy=graphical.target</code> in the unit's
|
|
"<code class="literal">[Install]</code>" section.</p></dd><dt id="hibernate.target"><span class="term"><code class="filename">hibernate.target</code></span><a class="headerlink" title="Permalink to this term" href="#hibernate.target">¶</a></dt><dd><p>A special target unit for hibernating the system. This
|
|
pulls in <code class="filename">sleep.target</code>.</p></dd><dt id="hybrid-sleep.target"><span class="term"><code class="filename">hybrid-sleep.target</code></span><a class="headerlink" title="Permalink to this term" href="#hybrid-sleep.target">¶</a></dt><dd><p>A special target unit for hibernating and suspending
|
|
the system at the same time. This pulls in
|
|
<code class="filename">sleep.target</code>.</p></dd><dt id="halt.target"><span class="term"><code class="filename">halt.target</code></span><a class="headerlink" title="Permalink to this term" href="#halt.target">¶</a></dt><dd><p>A special target unit for shutting down and halting
|
|
the system. Note that this target is distinct from
|
|
<code class="filename">poweroff.target</code> in that it generally
|
|
really just halts the system rather than powering it
|
|
down.</p><p>Applications wanting to halt the system should start
|
|
this unit.</p></dd><dt id="initrd-fs.target"><span class="term"><code class="filename">initrd-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#initrd-fs.target">¶</a></dt><dd><p><a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(3)</span></a>
|
|
automatically adds dependencies of type
|
|
<code class="varname">Before=</code> to
|
|
<code class="filename">sysroot-usr.mount</code> and all mount points
|
|
found in <code class="filename">/etc/fstab</code> that have
|
|
<code class="option">x-initrd.mount</code> and not have
|
|
<code class="option">noauto</code> mount options set.</p></dd><dt id="kbrequest.target"><span class="term"><code class="filename">kbrequest.target</code></span><a class="headerlink" title="Permalink to this term" href="#kbrequest.target">¶</a></dt><dd><p>systemd starts this target whenever Alt+ArrowUp is
|
|
pressed on the console. This is a good candidate to be
|
|
aliased (symlinked) to
|
|
<code class="filename">rescue.target</code>.</p></dd><dt id="kexec.target"><span class="term"><code class="filename">kexec.target</code></span><a class="headerlink" title="Permalink to this term" href="#kexec.target">¶</a></dt><dd><p>A special target unit for shutting down and rebooting
|
|
the system via kexec.</p><p>Applications wanting to reboot the system with kexec
|
|
should start this unit.</p></dd><dt id="local-fs.target"><span class="term"><code class="filename">local-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#local-fs.target">¶</a></dt><dd><p><a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(3)</span></a>
|
|
automatically adds dependencies of type
|
|
<code class="varname">Before=</code> to all mount units that refer to
|
|
local mount points for this target unit. In addition, it
|
|
adds dependencies of type <code class="varname">Wants=</code> to this
|
|
target unit for those mounts listed in
|
|
<code class="filename">/etc/fstab</code> that have the
|
|
<code class="option">auto</code> mount option set.</p></dd><dt id="multi-user.target"><span class="term"><code class="filename">multi-user.target</code></span><a class="headerlink" title="Permalink to this term" href="#multi-user.target">¶</a></dt><dd><p>A special target unit for setting up a multi-user
|
|
system (non-graphical). This is pulled in by
|
|
<code class="filename">graphical.target</code>.</p><p>Units that are needed for a multi-user system shall
|
|
add <code class="varname">Wants=</code> dependencies for their unit to
|
|
this unit during installation. This is best configured via
|
|
<code class="varname">WantedBy=multi-user.target</code> in the unit's
|
|
"<code class="literal">[Install]</code>" section.</p></dd><dt id="network-online.target"><span class="term"><code class="filename">network-online.target</code></span><a class="headerlink" title="Permalink to this term" href="#network-online.target">¶</a></dt><dd><p>Units that strictly require a configured network
|
|
connection should pull in
|
|
<code class="filename">network-online.target</code> (via a
|
|
<code class="varname">Wants=</code> 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.</p><p>Note the distinction between this unit and
|
|
<code class="filename">network.target</code>. 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, <code class="filename">network.target</code> 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, <code class="filename">network.target</code>
|
|
is part of the boot of most systems, while
|
|
<code class="filename">network-online.target</code> is not, except
|
|
when at least one unit requires it. Also see <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget" target="_top">Running
|
|
Services After the Network is up</a> for more
|
|
information.</p><p>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.</p></dd><dt id="paths.target"><span class="term"><code class="filename">paths.target</code></span><a class="headerlink" title="Permalink to this term" href="#paths.target">¶</a></dt><dd><p>A special target unit that sets up all path units (see
|
|
<a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>
|
|
for details) that shall be active after boot.</p><p>It is recommended that path units installed by
|
|
applications get pulled in via <code class="varname">Wants=</code>
|
|
dependencies from this unit. This is best configured via a
|
|
<code class="varname">WantedBy=paths.target</code> in the path unit's
|
|
"<code class="literal">[Install]</code>" section.</p></dd><dt id="poweroff.target"><span class="term"><code class="filename">poweroff.target</code></span><a class="headerlink" title="Permalink to this term" href="#poweroff.target">¶</a></dt><dd><p>A special target unit for shutting down and powering
|
|
off the system.</p><p>Applications wanting to power off the system should
|
|
start this unit.</p><p><code class="filename">runlevel0.target</code> is an alias for
|
|
this target unit, for compatibility with SysV.</p></dd><dt id="reboot.target"><span class="term"><code class="filename">reboot.target</code></span><a class="headerlink" title="Permalink to this term" href="#reboot.target">¶</a></dt><dd><p>A special target unit for shutting down and rebooting
|
|
the system.</p><p>Applications wanting to reboot the system should start
|
|
this unit.</p><p><code class="filename">runlevel6.target</code> is an alias for
|
|
this target unit, for compatibility with SysV.</p></dd><dt id="remote-fs.target"><span class="term"><code class="filename">remote-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#remote-fs.target">¶</a></dt><dd><p>Similar to <code class="filename">local-fs.target</code>, but
|
|
for remote mount points.</p><p>systemd automatically adds dependencies of type
|
|
<code class="varname">After=</code> for this target unit to all SysV
|
|
init script service units with an LSB header referring to
|
|
the "<code class="literal">$remote_fs</code>" facility.</p></dd><dt id="rescue.target"><span class="term"><code class="filename">rescue.target</code></span><a class="headerlink" title="Permalink to this term" href="#rescue.target">¶</a></dt><dd><p>A special target unit for setting up the base system
|
|
and a rescue shell.</p><p><code class="filename">runlevel1.target</code> is an alias for
|
|
this target unit, for compatibility with SysV.</p></dd><dt id="initrd-root-fs.target"><span class="term"><code class="filename">initrd-root-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#initrd-root-fs.target">¶</a></dt><dd><p><a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(3)</span></a>
|
|
automatically adds dependencies of type
|
|
<code class="varname">Before=</code> to the
|
|
<code class="filename">sysroot.mount</code> unit, which is generated
|
|
from the kernel command line.
|
|
</p></dd><dt id="runlevel2.target"><span class="term"><code class="filename">runlevel2.target</code>, </span><span class="term"><code class="filename">runlevel3.target</code>, </span><span class="term"><code class="filename">runlevel4.target</code>, </span><span class="term"><code class="filename">runlevel5.target</code></span><a class="headerlink" title="Permalink to this term" href="#runlevel2.target">¶</a></dt><dd><p>These are targets that are called whenever the SysV
|
|
compatibility code asks for runlevel 2, 3, 4, 5,
|
|
respectively. It is a good idea to make this an alias for
|
|
(i.e. symlink to) <code class="filename">multi-user.target</code>
|
|
(for runlevel 2) or <code class="filename">graphical.target</code>
|
|
(the others).</p></dd><dt id="shutdown.target"><span class="term"><code class="filename">shutdown.target</code></span><a class="headerlink" title="Permalink to this term" href="#shutdown.target">¶</a></dt><dd><p>A special target unit that terminates the services on
|
|
system shutdown.</p><p>Services that shall be terminated on system shutdown
|
|
shall add <code class="varname">Conflicts=</code> dependencies to this
|
|
unit for their service unit, which is implicitly done when
|
|
<code class="varname">DefaultDependencies=yes</code> is set (the
|
|
default).</p></dd><dt id="sigpwr.target"><span class="term"><code class="filename">sigpwr.target</code></span><a class="headerlink" title="Permalink to this term" href="#sigpwr.target">¶</a></dt><dd><p>A special target that is started when systemd receives
|
|
the SIGPWR process signal, which is normally sent by the
|
|
kernel or UPS daemons when power fails.</p></dd><dt id="sleep.target"><span class="term"><code class="filename">sleep.target</code></span><a class="headerlink" title="Permalink to this term" href="#sleep.target">¶</a></dt><dd><p>A special target unit that is pulled in by
|
|
<code class="filename">suspend.target</code>,
|
|
<code class="filename">hibernate.target</code> and
|
|
<code class="filename">hybrid-sleep.target</code> and may be used to
|
|
hook units into the sleep state logic.</p></dd><dt id="sockets.target"><span class="term"><code class="filename">sockets.target</code></span><a class="headerlink" title="Permalink to this term" href="#sockets.target">¶</a></dt><dd><p>A special target unit that sets up all socket
|
|
units.(see
|
|
<a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>
|
|
for details) that shall be active after boot.</p><p>Services that can be socket-activated shall add
|
|
<code class="varname">Wants=</code> dependencies to this unit for
|
|
their socket unit during installation. This is best
|
|
configured via a <code class="varname">WantedBy=sockets.target</code>
|
|
in the socket unit's "<code class="literal">[Install]</code>"
|
|
section.</p></dd><dt id="suspend.target"><span class="term"><code class="filename">suspend.target</code></span><a class="headerlink" title="Permalink to this term" href="#suspend.target">¶</a></dt><dd><p>A special target unit for suspending the system. This
|
|
pulls in <code class="filename">sleep.target</code>.</p></dd><dt id="swap.target"><span class="term"><code class="filename">swap.target</code></span><a class="headerlink" title="Permalink to this term" href="#swap.target">¶</a></dt><dd><p>Similar to <code class="filename">local-fs.target</code>, but
|
|
for swap partitions and swap files.</p></dd><dt id="sysinit.target"><span class="term"><code class="filename">sysinit.target</code></span><a class="headerlink" title="Permalink to this term" href="#sysinit.target">¶</a></dt><dd><p>A special target unit covering early boot-up
|
|
scripts.</p></dd><dt id="syslog.socket"><span class="term"><code class="filename">syslog.socket</code></span><a class="headerlink" title="Permalink to this term" href="#syslog.socket">¶</a></dt><dd><p>The socket unit syslog implementations should listen
|
|
on. All userspace log messages will be made available on
|
|
this socket. For more information about syslog integration,
|
|
please consult the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/syslog" target="_top">Syslog
|
|
Interface</a> document.</p></dd><dt id="system-update.target"><span class="term"><code class="filename">system-update.target</code></span><a class="headerlink" title="Permalink to this term" href="#system-update.target">¶</a></dt><dd><p>A special target unit that is used for off-line system
|
|
updates.
|
|
<a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a>
|
|
will redirect the boot process to this target if
|
|
<code class="filename">/system-update</code> exists. For more
|
|
information see the <a class="ulink" href="http://freedesktop.org/wiki/Software/systemd/SystemUpdates" target="_top">System
|
|
Updates Specification</a>.</p></dd><dt id="timers.target"><span class="term"><code class="filename">timers.target</code></span><a class="headerlink" title="Permalink to this term" href="#timers.target">¶</a></dt><dd><p>A special target unit that sets up all timer units
|
|
(see
|
|
<a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a>
|
|
for details) that shall be active after boot.</p><p>It is recommended that timer units installed by
|
|
applications get pulled in via <code class="varname">Wants=</code>
|
|
dependencies from this unit. This is best configured via
|
|
<code class="varname">WantedBy=timers.target</code> in the timer
|
|
unit's "<code class="literal">[Install]</code>" section.</p></dd><dt id="umount.target"><span class="term"><code class="filename">umount.target</code></span><a class="headerlink" title="Permalink to this term" href="#umount.target">¶</a></dt><dd><p>A special target unit that umounts all mount and
|
|
automount points on system shutdown.</p><p>Mounts that shall be unmounted on system shutdown
|
|
shall add Conflicts dependencies to this unit for their
|
|
mount unit, which is implicitly done when
|
|
<code class="varname">DefaultDependencies=yes</code> is set (the
|
|
default).</p></dd></dl></div></div><div class="refsect1"><a name="idm140275571332224"></a><h2 id="Special System Units for Devices">Special System Units for Devices<a class="headerlink" title="Permalink to this headline" href="#Special%20System%20Units%20for%20Devices">¶</a></h2><p>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.</p><div class="variablelist"><dl class="variablelist"><dt id="bluetooth.target"><span class="term"><code class="filename">bluetooth.target</code></span><a class="headerlink" title="Permalink to this term" href="#bluetooth.target">¶</a></dt><dd><p>This target is started automatically as soon as a
|
|
Bluetooth controller is plugged in or becomes available at
|
|
boot.</p><p>This may be used to pull in Bluetooth management
|
|
daemons dynamically when Bluetooth hardware is found.</p></dd><dt id="printer.target"><span class="term"><code class="filename">printer.target</code></span><a class="headerlink" title="Permalink to this term" href="#printer.target">¶</a></dt><dd><p>This target is started automatically as soon as a
|
|
printer is plugged in or becomes available at boot.</p><p>This may be used to pull in printer management daemons
|
|
dynamically when printer hardware is found.</p></dd><dt id="smartcard.target"><span class="term"><code class="filename">smartcard.target</code></span><a class="headerlink" title="Permalink to this term" href="#smartcard.target">¶</a></dt><dd><p>This target is started automatically as soon as a
|
|
smartcard controller is plugged in or becomes available at
|
|
boot.</p><p>This may be used to pull in smartcard management
|
|
daemons dynamically when smartcard hardware is found.</p></dd><dt id="sound.target"><span class="term"><code class="filename">sound.target</code></span><a class="headerlink" title="Permalink to this term" href="#sound.target">¶</a></dt><dd><p>This target is started automatically as soon as a
|
|
sound card is plugged in or becomes available at
|
|
boot.</p><p>This may be used to pull in audio management daemons
|
|
dynamically when audio hardware is found.</p></dd></dl></div></div><div class="refsect1"><a name="idm140275571320224"></a><h2 id="Special Passive System Units ">Special Passive System Units <a class="headerlink" title="Permalink to this headline" href="#Special%20Passive%20System%20Units%20">¶</a></h2><p>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 <span class="emphasis"><em>passive</em></span> 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
|
|
<code class="varname">Wants=</code> type dependency).</p><p>Note that these passive units cannot be started manually,
|
|
i.e. "<code class="literal">systemctl start time-sync.target</code>" 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.</p><div class="variablelist"><dl class="variablelist"><dt id="cryptsetup-pre.target"><span class="term"><code class="filename">cryptsetup-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#cryptsetup-pre.target">¶</a></dt><dd><p>This passive target unit may be pulled in by services
|
|
that want to run before any encrypted block device is set
|
|
up. All encrypted block devices are set up after this target
|
|
has been reached. Since the shutdown order is implicitly the
|
|
reverse start-up order between units, this target is
|
|
particularly useful to ensure that a service is shut down
|
|
only after all encrypted block devices are fully
|
|
stopped.</p></dd><dt id="local-fs-pre.target"><span class="term"><code class="filename">local-fs-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#local-fs-pre.target">¶</a></dt><dd><p>This target unit is
|
|
automatically ordered before
|
|
all local mount points marked
|
|
with <code class="option">auto</code>
|
|
(see above). It can be used to
|
|
execute certain units before
|
|
all local mounts.</p></dd><dt id="network.target"><span class="term"><code class="filename">network.target</code></span><a class="headerlink" title="Permalink to this term" href="#network.target">¶</a></dt><dd><p>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
|
|
<code class="filename">network.target</code> will be stopped before
|
|
the network -- to whatever level it might be set up then --
|
|
is shut down. It is hence useful when writing service files
|
|
that require network access on shutdown, which should order
|
|
themselves after this target, but not pull it in. Also see
|
|
<a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget" target="_top">Running
|
|
Services After the Network is up</a> for more
|
|
information. Also see
|
|
<code class="filename">network-online.target</code> described
|
|
above.</p><p>systemd automatically adds dependencies of type
|
|
<code class="varname">After=</code> for this target unit to all SysV
|
|
init script service units with an LSB header referring to
|
|
the "<code class="literal">$network</code>" facility.</p></dd><dt id="network-pre.target"><span class="term"><code class="filename">network-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#network-pre.target">¶</a></dt><dd><p>This passive target unit may be pulled in by services
|
|
that want to run before any network is set up, for example
|
|
for the purpose of setting up a firewall. All network
|
|
management software orders itself after this target, but
|
|
does not pull it in.</p></dd><dt id="nss-lookup.target"><span class="term"><code class="filename">nss-lookup.target</code></span><a class="headerlink" title="Permalink to this term" href="#nss-lookup.target">¶</a></dt><dd><p>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
|
|
<code class="filename">nss-user-lookup.target</code> should be used.
|
|
All services for which the availability of full host/network
|
|
name resolution is essential should be ordered after this
|
|
target, but not pull it in. systemd automatically adds
|
|
dependencies of type <code class="varname">After=</code> for this
|
|
target unit to all SysV init script service units with an
|
|
LSB header referring to the "<code class="literal">$named</code>"
|
|
facility.</p></dd><dt id="nss-user-lookup.target"><span class="term"><code class="filename">nss-user-lookup.target</code></span><a class="headerlink" title="Permalink to this term" href="#nss-user-lookup.target">¶</a></dt><dd><p>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
|
|
<code class="filename">nss-lookup.target</code> should be used. All
|
|
services for which the availability of the full user/group
|
|
database is essential should be ordered after this target,
|
|
but not pull it in. Note that system users are always
|
|
resolvable, and hence do not require any special ordering
|
|
against this target.</p></dd><dt id="remote-fs-pre.target"><span class="term"><code class="filename">remote-fs-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#remote-fs-pre.target">¶</a></dt><dd><p>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
|
|
<code class="varname">Wants=</code> type dependency. If the unit wants
|
|
to be pulled in by the first remote mount showing up, it
|
|
should use <code class="filename">network-online.target</code> (see
|
|
above).</p></dd><dt id="rpcbind.target"><span class="term"><code class="filename">rpcbind.target</code></span><a class="headerlink" title="Permalink to this term" href="#rpcbind.target">¶</a></dt><dd><p>The portmapper/rpcbind pulls in this target and orders
|
|
itself before it, to indicate its availability. systemd
|
|
automatically adds dependencies of type
|
|
<code class="varname">After=</code> for this target unit to all SysV
|
|
init script service units with an LSB header referring to
|
|
the "<code class="literal">$portmap</code>" facility.</p></dd><dt id="time-sync.target"><span class="term"><code class="filename">time-sync.target</code></span><a class="headerlink" title="Permalink to this term" href="#time-sync.target">¶</a></dt><dd><p>Services responsible for synchronizing the system
|
|
clock from a remote source (such as NTP client
|
|
implementations) should pull in this target and order
|
|
themselves before it. All services where correct time is
|
|
essential should be ordered after this unit, but not pull it
|
|
in. systemd automatically adds dependencies of type
|
|
<code class="varname">After=</code> for this target unit to all SysV
|
|
init script service units with an LSB header referring to
|
|
the "<code class="literal">$time</code>" facility. </p></dd></dl></div></div><div class="refsect1"><a name="idm140275571285408"></a><h2 id="Special User Units">Special User Units<a class="headerlink" title="Permalink to this headline" href="#Special%20User%20Units">¶</a></h2><p>When systemd runs as a user instance, the following special
|
|
units are available, which have similar definitions as their
|
|
system counterparts:
|
|
<code class="filename">default.target</code>,
|
|
<code class="filename">shutdown.target</code>,
|
|
<code class="filename">sockets.target</code>,
|
|
<code class="filename">timers.target</code>,
|
|
<code class="filename">paths.target</code>,
|
|
<code class="filename">bluetooth.target</code>,
|
|
<code class="filename">printer.target</code>,
|
|
<code class="filename">smartcard.target</code>,
|
|
<code class="filename">sound.target</code>.</p><p>In addition, the following special unit is understood only
|
|
when systemd runs as service instance:</p><div class="variablelist"><dl class="variablelist"><dt id="exit.target"><span class="term"><code class="filename">exit.target</code></span><a class="headerlink" title="Permalink to this term" href="#exit.target">¶</a></dt><dd><p>A special service unit for shutting down the user
|
|
service manager.</p><p>Applications wanting to terminate the user service
|
|
manager should start this unit. If systemd receives
|
|
<code class="constant">SIGTERM</code> or <code class="constant">SIGINT</code>
|
|
when running as user service daemon, it will start this
|
|
unit.</p><p>Normally, this pulls in
|
|
<code class="filename">shutdown.target</code> which in turn should be
|
|
conflicted by all units that want to be shut down on user
|
|
service manager exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm140275571273040"></a><h2 id="Special Slice Units">Special Slice Units<a class="headerlink" title="Permalink to this headline" href="#Special%20Slice%20Units">¶</a></h2><p>There are four "<code class="literal">.slice</code>" units which form
|
|
the basis of the hierarchy for assignment of resources for
|
|
services, users, and virtual machines or containers.</p><div class="variablelist"><dl class="variablelist"><dt id="-.slice"><span class="term"><code class="filename">-.slice</code></span><a class="headerlink" title="Permalink to this term" href="#-.slice">¶</a></dt><dd><p>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.</p></dd><dt id="system.slice"><span class="term"><code class="filename">system.slice</code></span><a class="headerlink" title="Permalink to this term" href="#system.slice">¶</a></dt><dd><p>By default, all services services started by
|
|
<span class="command"><strong>systemd</strong></span> are found in this slice.</p></dd><dt id="user.slice"><span class="term"><code class="filename">user.slice</code></span><a class="headerlink" title="Permalink to this term" href="#user.slice">¶</a></dt><dd><p>By default, all user processes and services started on
|
|
behalf of the user, including the per-user systemd instance
|
|
are found in this slice.</p></dd><dt id="machine.slice"><span class="term"><code class="filename">machine.slice</code></span><a class="headerlink" title="Permalink to this term" href="#machine.slice">¶</a></dt><dd><p>By default, all virtual machines and containers
|
|
registered with <span class="command"><strong>systemd-machined</strong></span> are
|
|
found in this slice.
|
|
</p></dd></dl></div></div><div class="refsect1"><a name="idm140275571261408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
|
|
<a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
|
|
<a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
|
|
<a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>,
|
|
<a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>,
|
|
<a href="systemd.target.html"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a>,
|
|
<a href="systemd.slice.html"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a>,
|
|
<a href="http://man7.org/linux/man-pages/man7/bootup.7.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a>,
|
|
<a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a>
|
|
</p></div></div></body></html>
|