]>
Commit | Line | Data |
---|---|---|
663996b3 MS |
1 | <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> |
2 | a.headerlink { | |
3 | color: #c60f0f; | |
4 | font-size: 0.8em; | |
5 | padding: 0 4px 0 4px; | |
6 | text-decoration: none; | |
7 | visibility: hidden; | |
8 | } | |
9 | ||
10 | a.headerlink:hover { | |
11 | background-color: #c60f0f; | |
12 | color: white; | |
13 | } | |
14 | ||
15 | h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink { | |
16 | visibility: visible; | |
17 | } | |
18 | </style><a href="index.html">Index </a>· | |
19 | <a href="systemd.directives.html">Directives </a>· | |
20 | <a href="../python-systemd/index.html">Python </a>· | |
21 | <a href="../libudev/index.html">libudev </a>· | |
e735f4d4 MP |
22 | <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>, |
23 | <code class="filename">bluetooth.target</code>, | |
24 | <code class="filename">ctrl-alt-del.target</code>, | |
25 | <code class="filename">cryptsetup.target</code>, | |
26 | <code class="filename">cryptsetup-pre.target</code>, | |
27 | <code class="filename">dbus.service</code>, | |
28 | <code class="filename">dbus.socket</code>, | |
29 | <code class="filename">default.target</code>, | |
30 | <code class="filename">display-manager.service</code>, | |
31 | <code class="filename">emergency.target</code>, | |
32 | <code class="filename">exit.target</code>, | |
33 | <code class="filename">final.target</code>, | |
34 | <code class="filename">getty.target</code>, | |
35 | <code class="filename">graphical.target</code>, | |
36 | <code class="filename">halt.target</code>, | |
37 | <code class="filename">hibernate.target</code>, | |
38 | <code class="filename">hybrid-sleep.target</code>, | |
39 | <code class="filename">initrd-fs.target</code>, | |
40 | <code class="filename">kbrequest.target</code>, | |
41 | <code class="filename">kexec.target</code>, | |
42 | <code class="filename">local-fs.target</code>, | |
43 | <code class="filename">local-fs-pre.target</code>, | |
44 | <code class="filename">multi-user.target</code>, | |
45 | <code class="filename">network.target</code>, | |
46 | <code class="filename">network-online.target</code>, | |
47 | <code class="filename">network-pre.target</code>, | |
48 | <code class="filename">nss-lookup.target</code>, | |
49 | <code class="filename">nss-user-lookup.target</code>, | |
50 | <code class="filename">paths.target</code>, | |
51 | <code class="filename">poweroff.target</code>, | |
52 | <code class="filename">printer.target</code>, | |
53 | <code class="filename">reboot.target</code>, | |
54 | <code class="filename">remote-fs.target</code>, | |
55 | <code class="filename">remote-fs-pre.target</code>, | |
56 | <code class="filename">rescue.target</code>, | |
57 | <code class="filename">initrd-root-fs.target</code>, | |
58 | <code class="filename">rpcbind.target</code>, | |
59 | <code class="filename">runlevel2.target</code>, | |
60 | <code class="filename">runlevel3.target</code>, | |
61 | <code class="filename">runlevel4.target</code>, | |
62 | <code class="filename">runlevel5.target</code>, | |
63 | <code class="filename">shutdown.target</code>, | |
64 | <code class="filename">sigpwr.target</code>, | |
65 | <code class="filename">sleep.target</code>, | |
66 | <code class="filename">smartcard.target</code>, | |
67 | <code class="filename">sockets.target</code>, | |
68 | <code class="filename">sound.target</code>, | |
69 | <code class="filename">suspend.target</code>, | |
70 | <code class="filename">swap.target</code>, | |
71 | <code class="filename">sysinit.target</code>, | |
72 | <code class="filename">syslog.socket</code>, | |
73 | <code class="filename">system-update.target</code>, | |
74 | <code class="filename">time-sync.target</code>, | |
75 | <code class="filename">timers.target</code>, | |
76 | <code class="filename">umount.target</code>, | |
77 | <code class="filename">-.slice</code>, | |
78 | <code class="filename">system.slice</code>, | |
79 | <code class="filename">user.slice</code>, | |
80 | <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 | |
81 | 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 | |
82 | <code class="varname">Requires=</code> and <code class="varname">After=</code> | |
83 | for this target unit to all services (except for those with | |
84 | <code class="varname">DefaultDependencies=no</code>).</p><p>Usually this should pull-in all mount points, swap | |
85 | devices, sockets, timers, and path units and other basic | |
86 | 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 | |
87 | pressed on the console. Usually this should be aliased | |
88 | (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 | |
89 | 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 | |
90 | this service is fully started up systemd will connect to it | |
91 | 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 | |
92 | units with <code class="varname">Type=dbus</code> automatically gain a | |
93 | 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 | |
94 | this should be aliased (symlinked) to | |
95 | <code class="filename">multi-user.target</code> or | |
96 | <code class="filename">graphical.target</code>.</p><p>The default unit systemd starts at bootup can be | |
97 | overridden with the <code class="varname">systemd.unit=</code> kernel | |
98 | 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 | |
99 | aliased (symlinked) to <code class="filename">gdm.service</code> or a | |
100 | 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 | |
101 | on the main console. This unit is supposed to be used with | |
102 | the kernel command line option | |
103 | <code class="varname">systemd.unit=</code> and has otherwise little | |
104 | use. | |
105 | </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 | |
106 | logic and may be used to pull in late services after all | |
107 | normal services are already terminated and all mounts | |
108 | unmounted. | |
109 | </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 | |
110 | configured local TTY <code class="filename">getty</code> instances. | |
111 | </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 | |
112 | screen. This pulls in | |
113 | <code class="filename">multi-user.target</code>.</p><p>Units that are needed for graphical logins shall add | |
114 | <code class="varname">Wants=</code> dependencies for their unit to | |
115 | this unit (or <code class="filename">multi-user.target</code>) during | |
116 | installation. This is best configured via | |
117 | <code class="varname">WantedBy=graphical.target</code> in the unit's | |
118 | "<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 | |
119 | 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 | |
120 | the system at the same time. This pulls in | |
121 | <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 | |
122 | the system. Note that this target is distinct from | |
123 | <code class="filename">poweroff.target</code> in that it generally | |
124 | really just halts the system rather than powering it | |
125 | down.</p><p>Applications wanting to halt the system should start | |
126 | 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> | |
127 | automatically adds dependencies of type | |
128 | <code class="varname">Before=</code> to | |
129 | <code class="filename">sysroot-usr.mount</code> and all mount points | |
130 | found in <code class="filename">/etc/fstab</code> that have | |
131 | <code class="option">x-initrd.mount</code> and not have | |
132 | <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 | |
133 | pressed on the console. This is a good candidate to be | |
134 | aliased (symlinked) to | |
135 | <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 | |
136 | the system via kexec.</p><p>Applications wanting to reboot the system with kexec | |
137 | 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> | |
138 | automatically adds dependencies of type | |
139 | <code class="varname">Before=</code> to all mount units that refer to | |
140 | local mount points for this target unit. In addition, it | |
141 | adds dependencies of type <code class="varname">Wants=</code> to this | |
142 | target unit for those mounts listed in | |
143 | <code class="filename">/etc/fstab</code> that have the | |
144 | <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 | |
145 | system (non-graphical). This is pulled in by | |
146 | <code class="filename">graphical.target</code>.</p><p>Units that are needed for a multi-user system shall | |
147 | add <code class="varname">Wants=</code> dependencies for their unit to | |
148 | this unit during installation. This is best configured via | |
149 | <code class="varname">WantedBy=multi-user.target</code> in the unit's | |
150 | "<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 | |
151 | connection should pull in | |
152 | <code class="filename">network-online.target</code> (via a | |
153 | <code class="varname">Wants=</code> type dependency) and order | |
154 | themselves after it. This target unit is intended to pull in | |
155 | a service that delays further execution until the network is | |
156 | sufficiently set up. What precisely this requires is left to | |
157 | the implementation of the network managing service.</p><p>Note the distinction between this unit and | |
158 | <code class="filename">network.target</code>. This unit is an active | |
159 | unit (i.e. pulled in by the consumer rather than the | |
160 | provider of this functionality) and pulls in a service which | |
161 | possibly adds substantial delays to further execution. In | |
162 | contrast, <code class="filename">network.target</code> is a passive | |
163 | unit (i.e. pulled in by the provider of the functionality, | |
164 | rather than the consumer) that usually does not delay | |
165 | execution much. Usually, <code class="filename">network.target</code> | |
166 | is part of the boot of most systems, while | |
167 | <code class="filename">network-online.target</code> is not, except | |
168 | when at least one unit requires it. Also see <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget" target="_top">Running | |
169 | Services After the Network is up</a> for more | |
170 | information.</p><p>All mount units for remote network file systems | |
171 | automatically pull in this unit, and order themselves after | |
172 | it. Note that networking daemons that simply provide | |
173 | functionality to other hosts generally do not need to pull | |
174 | 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 | |
175 | <a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a> | |
176 | for details) that shall be active after boot.</p><p>It is recommended that path units installed by | |
177 | applications get pulled in via <code class="varname">Wants=</code> | |
178 | dependencies from this unit. This is best configured via a | |
179 | <code class="varname">WantedBy=paths.target</code> in the path unit's | |
180 | "<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 | |
181 | off the system.</p><p>Applications wanting to power off the system should | |
182 | start this unit.</p><p><code class="filename">runlevel0.target</code> is an alias for | |
183 | 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 | |
184 | the system.</p><p>Applications wanting to reboot the system should start | |
185 | this unit.</p><p><code class="filename">runlevel6.target</code> is an alias for | |
186 | 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 | |
187 | for remote mount points.</p><p>systemd automatically adds dependencies of type | |
188 | <code class="varname">After=</code> for this target unit to all SysV | |
189 | init script service units with an LSB header referring to | |
190 | 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 | |
191 | and a rescue shell.</p><p><code class="filename">runlevel1.target</code> is an alias for | |
192 | 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> | |
193 | automatically adds dependencies of type | |
194 | <code class="varname">Before=</code> to the | |
195 | <code class="filename">sysroot.mount</code> unit, which is generated | |
196 | from the kernel command line. | |
197 | </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 | |
198 | compatibility code asks for runlevel 2, 3, 4, 5, | |
199 | respectively. It is a good idea to make this an alias for | |
200 | (i.e. symlink to) <code class="filename">multi-user.target</code> | |
201 | (for runlevel 2) or <code class="filename">graphical.target</code> | |
202 | (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 | |
203 | system shutdown.</p><p>Services that shall be terminated on system shutdown | |
204 | shall add <code class="varname">Conflicts=</code> dependencies to this | |
205 | unit for their service unit, which is implicitly done when | |
206 | <code class="varname">DefaultDependencies=yes</code> is set (the | |
207 | 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 | |
208 | the SIGPWR process signal, which is normally sent by the | |
209 | 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 | |
210 | <code class="filename">suspend.target</code>, | |
211 | <code class="filename">hibernate.target</code> and | |
212 | <code class="filename">hybrid-sleep.target</code> and may be used to | |
213 | 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 | |
214 | units.(see | |
215 | <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a> | |
216 | for details) that shall be active after boot.</p><p>Services that can be socket-activated shall add | |
217 | <code class="varname">Wants=</code> dependencies to this unit for | |
218 | their socket unit during installation. This is best | |
219 | configured via a <code class="varname">WantedBy=sockets.target</code> | |
220 | in the socket unit's "<code class="literal">[Install]</code>" | |
221 | 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 | |
222 | 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 | |
223 | 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 | |
224 | 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 | |
225 | on. All userspace log messages will be made available on | |
226 | this socket. For more information about syslog integration, | |
227 | please consult the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/syslog" target="_top">Syslog | |
228 | 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 | |
229 | updates. | |
230 | <a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a> | |
231 | will redirect the boot process to this target if | |
232 | <code class="filename">/system-update</code> exists. For more | |
233 | information see the <a class="ulink" href="http://freedesktop.org/wiki/Software/systemd/SystemUpdates" target="_top">System | |
234 | 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 | |
235 | (see | |
236 | <a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a> | |
237 | for details) that shall be active after boot.</p><p>It is recommended that timer units installed by | |
238 | applications get pulled in via <code class="varname">Wants=</code> | |
239 | dependencies from this unit. This is best configured via | |
240 | <code class="varname">WantedBy=timers.target</code> in the timer | |
241 | 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 | |
242 | automount points on system shutdown.</p><p>Mounts that shall be unmounted on system shutdown | |
243 | shall add Conflicts dependencies to this unit for their | |
244 | mount unit, which is implicitly done when | |
245 | <code class="varname">DefaultDependencies=yes</code> is set (the | |
246 | 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 | |
247 | certain kinds show up in the system. These may be used to | |
248 | automatically activate various services based on the specific type | |
249 | 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 | |
250 | Bluetooth controller is plugged in or becomes available at | |
251 | boot.</p><p>This may be used to pull in Bluetooth management | |
252 | 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 | |
253 | printer is plugged in or becomes available at boot.</p><p>This may be used to pull in printer management daemons | |
254 | 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 | |
255 | smartcard controller is plugged in or becomes available at | |
256 | boot.</p><p>This may be used to pull in smartcard management | |
257 | 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 | |
258 | sound card is plugged in or becomes available at | |
259 | boot.</p><p>This may be used to pull in audio management daemons | |
260 | 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 | |
261 | used to properly order boot-up of optional services. These targets | |
262 | are generally not part of the initial boot transaction, unless | |
263 | they are explicitly pulled in by one of the implementing services. | |
264 | Note specifically that these <span class="emphasis"><em>passive</em></span> target | |
265 | units are generally not pulled in by the consumer of a service, | |
266 | but by the provider of the service. This means: a consuming | |
267 | service should order itself after these targets (as appropriate), | |
268 | but not pull it in. A providing service should order itself before | |
269 | these targets (as appropriate) and pull it in (via a | |
270 | <code class="varname">Wants=</code> type dependency).</p><p>Note that these passive units cannot be started manually, | |
271 | i.e. "<code class="literal">systemctl start time-sync.target</code>" will fail | |
272 | with an error. They can only be pulled in by dependency. This is | |
273 | enforced since they exist for ordering purposes only and thus are | |
274 | 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 | |
275 | that want to run before any encrypted block device is set | |
276 | up. All encrypted block devices are set up after this target | |
277 | has been reached. Since the shutdown order is implicitly the | |
278 | reverse start-up order between units, this target is | |
279 | particularly useful to ensure that a service is shut down | |
280 | only after all encrypted block devices are fully | |
281 | 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 | |
282 | automatically ordered before | |
283 | all local mount points marked | |
284 | with <code class="option">auto</code> | |
285 | (see above). It can be used to | |
286 | execute certain units before | |
287 | 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 | |
288 | functionality is available, but it is only very weakly | |
289 | defined what that is supposed to mean, with one exception: | |
290 | at shutdown, a unit that is ordered after | |
291 | <code class="filename">network.target</code> will be stopped before | |
292 | the network -- to whatever level it might be set up then -- | |
293 | is shut down. It is hence useful when writing service files | |
294 | that require network access on shutdown, which should order | |
295 | themselves after this target, but not pull it in. Also see | |
296 | <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget" target="_top">Running | |
297 | Services After the Network is up</a> for more | |
298 | information. Also see | |
299 | <code class="filename">network-online.target</code> described | |
300 | above.</p><p>systemd automatically adds dependencies of type | |
301 | <code class="varname">After=</code> for this target unit to all SysV | |
302 | init script service units with an LSB header referring to | |
303 | 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 | |
304 | that want to run before any network is set up, for example | |
305 | for the purpose of setting up a firewall. All network | |
306 | management software orders itself after this target, but | |
307 | 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 | |
308 | for all host/network name service lookups. Note that this is | |
309 | independent of user/group name lookups for which | |
310 | <code class="filename">nss-user-lookup.target</code> should be used. | |
311 | All services for which the availability of full host/network | |
312 | name resolution is essential should be ordered after this | |
313 | target, but not pull it in. systemd automatically adds | |
314 | dependencies of type <code class="varname">After=</code> for this | |
315 | target unit to all SysV init script service units with an | |
316 | LSB header referring to the "<code class="literal">$named</code>" | |
317 | 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 | |
318 | for all user/group name service lookups. Note that this is | |
319 | independent of host/network name lookups for which | |
320 | <code class="filename">nss-lookup.target</code> should be used. All | |
321 | services for which the availability of the full user/group | |
322 | database is essential should be ordered after this target, | |
323 | but not pull it in. Note that system users are always | |
324 | resolvable, and hence do not require any special ordering | |
325 | 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 | |
326 | remote mount point units (see above). It can be used to run | |
327 | certain units before the remote mounts are established. Note | |
328 | that this unit is generally not part of the initial | |
329 | transaction, unless the unit that wants to be ordered before | |
330 | all remote mounts pulls it in via a | |
331 | <code class="varname">Wants=</code> type dependency. If the unit wants | |
332 | to be pulled in by the first remote mount showing up, it | |
333 | should use <code class="filename">network-online.target</code> (see | |
334 | 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 | |
335 | itself before it, to indicate its availability. systemd | |
336 | automatically adds dependencies of type | |
337 | <code class="varname">After=</code> for this target unit to all SysV | |
338 | init script service units with an LSB header referring to | |
339 | 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 | |
340 | clock from a remote source (such as NTP client | |
341 | implementations) should pull in this target and order | |
342 | themselves before it. All services where correct time is | |
343 | essential should be ordered after this unit, but not pull it | |
344 | in. systemd automatically adds dependencies of type | |
345 | <code class="varname">After=</code> for this target unit to all SysV | |
346 | init script service units with an LSB header referring to | |
347 | 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 | |
348 | units are available, which have similar definitions as their | |
349 | system counterparts: | |
350 | <code class="filename">default.target</code>, | |
351 | <code class="filename">shutdown.target</code>, | |
352 | <code class="filename">sockets.target</code>, | |
353 | <code class="filename">timers.target</code>, | |
354 | <code class="filename">paths.target</code>, | |
355 | <code class="filename">bluetooth.target</code>, | |
356 | <code class="filename">printer.target</code>, | |
357 | <code class="filename">smartcard.target</code>, | |
358 | <code class="filename">sound.target</code>.</p><p>In addition, the following special unit is understood only | |
359 | 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 | |
360 | service manager.</p><p>Applications wanting to terminate the user service | |
361 | manager should start this unit. If systemd receives | |
362 | <code class="constant">SIGTERM</code> or <code class="constant">SIGINT</code> | |
363 | when running as user service daemon, it will start this | |
364 | unit.</p><p>Normally, this pulls in | |
365 | <code class="filename">shutdown.target</code> which in turn should be | |
366 | conflicted by all units that want to be shut down on user | |
367 | 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 | |
368 | the basis of the hierarchy for assignment of resources for | |
369 | 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 | |
370 | usually does not contain units directly, but may be used to | |
371 | 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 | |
372 | <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 | |
373 | behalf of the user, including the per-user systemd instance | |
374 | 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 | |
375 | registered with <span class="command"><strong>systemd-machined</strong></span> are | |
376 | found in this slice. | |
377 | </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> | |
378 | <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, | |
379 | <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, | |
380 | <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, | |
381 | <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, | |
382 | <a href="systemd.target.html"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a>, | |
383 | <a href="systemd.slice.html"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a>, | |
384 | <a href="http://man7.org/linux/man-pages/man7/bootup.7.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a>, | |
385 | <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a> | |
386 | </p></div></div></body></html> |