]> git.ipfire.org Git - thirdparty/systemd.git/blame - man/systemd.special.xml
fstab-generator: drop x-initrd.rootfs mount option
[thirdparty/systemd.git] / man / systemd.special.xml
CommitLineData
9f235308
LP
1<?xml version='1.0'?> <!--*-nxml-*-->
2<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4
5<!--
6 This file is part of systemd.
7
8 Copyright 2010 Lennart Poettering
9
10 systemd is free software; you can redistribute it and/or modify it
5430f7f2
LP
11 under the terms of the GNU Lesser General Public License as published by
12 the Free Software Foundation; either version 2.1 of the License, or
9f235308
LP
13 (at your option) any later version.
14
15 systemd is distributed in the hope that it will be useful, but
16 WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
5430f7f2 18 Lesser General Public License for more details.
9f235308 19
5430f7f2 20 You should have received a copy of the GNU Lesser General Public License
9f235308
LP
21 along with systemd; If not, see <http://www.gnu.org/licenses/>.
22-->
23
24<refentry id="systemd.special">
25
26 <refentryinfo>
27 <title>systemd.special</title>
28 <productname>systemd</productname>
29
30 <authorgroup>
31 <author>
32 <contrib>Developer</contrib>
33 <firstname>Lennart</firstname>
34 <surname>Poettering</surname>
35 <email>lennart@poettering.net</email>
36 </author>
37 </authorgroup>
38 </refentryinfo>
39
40 <refmeta>
41 <refentrytitle>systemd.special</refentrytitle>
42 <manvolnum>7</manvolnum>
43 </refmeta>
44
45 <refnamediv>
46 <refname>systemd.special</refname>
feb88c9f 47 <refpurpose>Special systemd units</refpurpose>
9f235308
LP
48 </refnamediv>
49
50 <refsynopsisdiv>
9f2c5942 51 <para><filename>basic.target</filename>,
49dbfa7b 52 <filename>bluetooth.target</filename>,
9f2c5942 53 <filename>ctrl-alt-del.target</filename>,
49dbfa7b 54 <filename>cryptsetup.target</filename>,
83bda358 55 <filename>dbus.service</filename>,
feb88c9f 56 <filename>dbus.socket</filename>,
9f2c5942 57 <filename>default.target</filename>,
1e287fe3 58 <filename>display-manager.service</filename>,
f057408c 59 <filename>emergency.target</filename>,
0e0320e0
LP
60 <filename>exit.target</filename>,
61 <filename>final.target</filename>,
49dbfa7b 62 <filename>getty.target</filename>,
9f2c5942 63 <filename>graphical.target</filename>,
669b04a4 64 <filename>halt.target</filename>,
6edd7d0a 65 <filename>hibernate.target</filename>,
6524990f 66 <filename>hybrid-sleep.target</filename>,
700e07ff 67 <filename>initrd-fs.target</filename>,
9f2c5942 68 <filename>kbrequest.target</filename>,
feb88c9f 69 <filename>kexec.target</filename>,
9f2c5942 70 <filename>local-fs.target</filename>,
21e557ed 71 <filename>local-fs-pre.target</filename>,
9f2c5942
LP
72 <filename>multi-user.target</filename>,
73 <filename>network.target</filename>,
74 <filename>nss-lookup.target</filename>,
49dbfa7b 75 <filename>nss-user-lookup.target</filename>,
e3d84721 76 <filename>paths.target</filename>,
9f2c5942 77 <filename>poweroff.target</filename>,
49dbfa7b 78 <filename>printer.target</filename>,
9f2c5942
LP
79 <filename>reboot.target</filename>,
80 <filename>remote-fs.target</filename>,
21e557ed 81 <filename>remote-fs-pre.target</filename>,
e8d2f6cd 82 <filename>remote-fs-setup.target</filename>,
9f2c5942 83 <filename>rescue.target</filename>,
9e5f0f92 84 <filename>initrd-root-fs.target</filename>,
9f2c5942 85 <filename>rpcbind.target</filename>,
9f2c5942
LP
86 <filename>runlevel2.target</filename>,
87 <filename>runlevel3.target</filename>,
88 <filename>runlevel4.target</filename>,
89 <filename>runlevel5.target</filename>,
9f2c5942
LP
90 <filename>shutdown.target</filename>,
91 <filename>sigpwr.target</filename>,
6edd7d0a 92 <filename>sleep.target</filename>,
49dbfa7b 93 <filename>smartcard.target</filename>,
9f2c5942 94 <filename>sockets.target</filename>,
49dbfa7b 95 <filename>sound.target</filename>,
6edd7d0a 96 <filename>suspend.target</filename>,
9f2c5942 97 <filename>swap.target</filename>,
f92a18f5 98 <filename>sysinit.target</filename>,
feb88c9f 99 <filename>syslog.socket</filename>,
f5ccf26d 100 <filename>system-update.target</filename>,
db47cc2a 101 <filename>time-sync.target</filename>,
e3d84721 102 <filename>timers.target</filename>,
3b6fdb5b 103 <filename>umount.target</filename></para>
9f235308
LP
104 </refsynopsisdiv>
105
106 <refsect1>
107 <title>Description</title>
108
109 <para>A few units are treated specially by
110 systemd. They have special internal semantics and
111 cannot be renamed.</para>
112 </refsect1>
113
114 <refsect1>
115 <title>Special System Units</title>
116
117 <variablelist>
bd3d19a4
LP
118 <varlistentry>
119 <term><filename>basic.target</filename></term>
120 <listitem>
121 <para>A special target unit
e3d84721 122 covering basic boot-up.</para>
bd3d19a4
LP
123 <para>systemd automatically
124 adds dependencies of the types
e3d84721
LP
125 <varname>Requires=</varname>
126 and <varname>After=</varname>
127 for this target unit to all
128 services (except for those
129 with
130 <varname>DefaultDependencies=no</varname>).</para>
131
132 <para>Usually this should
133 pull-in all mount points, swap
134 devices, sockets, timers, and
135 path units and other basic
f92a18f5 136 initialization necessary for
e3d84721
LP
137 general purpose
138 daemons.</para>
bd3d19a4
LP
139 </listitem>
140 </varlistentry>
141 <varlistentry>
142 <term><filename>ctrl-alt-del.target</filename></term>
143 <listitem>
144 <para>systemd starts this
145 target whenever
146 Control+Alt+Del is pressed on
147 the console. Usually this
148 should be aliased (symlinked)
149 to
150 <filename>reboot.target</filename>.</para>
151 </listitem>
152 </varlistentry>
49dbfa7b
LP
153 <varlistentry>
154 <term><filename>cryptsetup.target</filename></term>
155 <listitem>
156 <para>A target that pulls in
157 setup services for all
158 encrypted block
159 devices.</para>
160 </listitem>
161 </varlistentry>
eeb7229c 162 <varlistentry>
83bda358 163 <term><filename>dbus.service</filename></term>
eeb7229c
LP
164 <listitem>
165 <para>A special unit for the
e3d84721 166 D-Bus bus daemon. As soon as
eeb7229c
LP
167 this service is fully started
168 up systemd will connect to it
169 and register its
170 service.</para>
171 </listitem>
172 </varlistentry>
feb88c9f
LP
173 <varlistentry>
174 <term><filename>dbus.socket</filename></term>
175 <listitem>
176 <para>A special unit for the
177 D-Bus system bus socket. All
178 units with
e3d84721 179 <varname>Type=dbus</varname>
feb88c9f
LP
180 automatically gain a
181 dependency on this
182 unit.</para>
183 </listitem>
184 </varlistentry>
bd3d19a4
LP
185 <varlistentry>
186 <term><filename>default.target</filename></term>
187 <listitem>
188 <para>The default unit systemd
189 starts at bootup. Usually this
190 should be aliased (symlinked)
191 to
192 <filename>multi-user.target</filename>
193 or
194 <filename>graphical.target</filename>.</para>
e3d84721 195
bd3d19a4
LP
196 <para>The default unit systemd
197 starts at bootup can be
8f28cbcd 198 overridden with the
2d87855a 199 <varname>systemd.unit=</varname>
bd3d19a4
LP
200 kernel command line option.</para>
201 </listitem>
202 </varlistentry>
1e287fe3
LP
203 <varlistentry>
204 <term><filename>display-manager.service</filename></term>
205 <listitem>
206 <para>The display manager
207 service. Usually this should
208 be aliased (symlinked) to
feb88c9f 209 <filename>gdm.service</filename>
1e287fe3
LP
210 or a similar display manager
211 service.</para>
1e287fe3
LP
212 </listitem>
213 </varlistentry>
9f235308 214 <varlistentry>
f057408c 215 <term><filename>emergency.target</filename></term>
9f235308 216 <listitem>
f057408c 217 <para>A special target unit
9f235308
LP
218 that starts an emergency
219 shell on the main
220 console. This unit is supposed
221 to be used with the kernel
222 command line option
2d87855a 223 <varname>systemd.unit=</varname>
9f235308
LP
224 and has otherwise little use.
225 </para>
226 </listitem>
227 </varlistentry>
feb88c9f
LP
228 <varlistentry>
229 <term><filename>final.target</filename></term>
230 <listitem>
231 <para>A special target unit
232 that is used during the
233 shutdown logic and may be used
234 to pull in late services after
235 all normal services are
236 already terminated and all
237 mounts unmounted.
238 </para>
239 </listitem>
240 </varlistentry>
49dbfa7b
LP
241 <varlistentry>
242 <term><filename>getty.target</filename></term>
243 <listitem>
244 <para>A special target unit
e3d84721
LP
245 that pulls in statically
246 configured local TTY
247 <filename>getty</filename>
248 instances.
49dbfa7b
LP
249 </para>
250 </listitem>
251 </varlistentry>
bd3d19a4
LP
252 <varlistentry>
253 <term><filename>graphical.target</filename></term>
254 <listitem>
255 <para>A special target unit
256 for setting up a graphical
257 login screen. This pulls in
258 <filename>multi-user.target</filename>.</para>
259
260 <para>Units that are needed
e3d84721
LP
261 for graphical logins shall add
262 <varname>Wants=</varname>
263 dependencies for their unit to
264 this unit (or
bd3d19a4 265 <filename>multi-user.target</filename>)
e3d84721
LP
266 during installation. This is
267 best configured via
268 <varname>WantedBy=graphical.target</varname>
269 in the unit's
270 <literal>[Install]</literal>
271 section.</para>
bd3d19a4
LP
272 </listitem>
273 </varlistentry>
6edd7d0a
LP
274 <varlistentry>
275 <term><filename>hibernate.target</filename></term>
276 <listitem>
277 <para>A special target unit
278 for hibernating the
279 system. This pulls in
280 <filename>sleep.target</filename>.</para>
281 </listitem>
282 </varlistentry>
6524990f
LP
283 <varlistentry>
284 <term><filename>hybrid-sleep.target</filename></term>
285 <listitem>
286 <para>A special target unit
287 for hibernating and suspending the
288 system at the same time. This pulls in
289 <filename>sleep.target</filename>.</para>
290 </listitem>
291 </varlistentry>
bd3d19a4
LP
292 <varlistentry>
293 <term><filename>halt.target</filename></term>
294 <listitem>
295 <para>A special target unit
e3d84721
LP
296 for shutting down and halting
297 the system. Note that this
298 target is distinct from
299 <filename>poweroff.target</filename>
300 in that it generally really
301 just halts the system rather
302 than powering it down.</para>
bd3d19a4
LP
303
304 <para>Applications wanting to
305 halt the system should start
306 this unit.</para>
307 </listitem>
308 </varlistentry>
700e07ff
HH
309 <varlistentry>
310 <term><filename>initrd-fs.target</filename></term>
311 <listitem>
e3d84721
LP
312 <para><citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>3</manvolnum></citerefentry>
313 automatically adds
314 dependencies of type
315 <varname>Before=</varname> to
316 <filename>sysroot-usr.mount</filename>
317 and all mount points fround in
700e07ff
HH
318 <filename>/etc/fstab</filename>
319 that have the
320 <option>auto</option> and
321 <option>x-initrd.mount</option>
322 mount options set.
700e07ff
HH
323 </para>
324 </listitem>
325 </varlistentry>
bd3d19a4
LP
326 <varlistentry>
327 <term><filename>kbrequest.target</filename></term>
328 <listitem>
329 <para>systemd starts this
330 target whenever Alt+ArrowUp is
331 pressed on the console. This
332 is a good candidate to be
333 aliased (symlinked) to
334 <filename>rescue.target</filename>.</para>
335 </listitem>
336 </varlistentry>
feb88c9f
LP
337 <varlistentry>
338 <term><filename>kexec.target</filename></term>
339 <listitem>
340 <para>A special target unit
341 for shutting down and rebooting the system via kexec.</para>
342
343 <para>Applications wanting to
344 reboot the system with kexec should start
345 this unit.</para>
346 </listitem>
347 </varlistentry>
9f235308
LP
348 <varlistentry>
349 <term><filename>local-fs.target</filename></term>
350 <listitem>
e3d84721
LP
351 <para><citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>3</manvolnum></citerefentry>
352 automatically adds
353 dependencies of type
354 <varname>Before=</varname> to
355 all mount units that refer to
356 local mount points for this
357 target unit. In addition, it
9f235308 358 adds dependencies of type
e3d84721 359 <varname>Wants=</varname> to
bd3d19a4
LP
360 this target unit for those
361 mounts listed in
9f235308
LP
362 <filename>/etc/fstab</filename>
363 that have the
e3d84721
LP
364 <option>auto</option> mount
365 option set.</para>
9f235308
LP
366 </listitem>
367 </varlistentry>
bd3d19a4
LP
368 <varlistentry>
369 <term><filename>multi-user.target</filename></term>
370 <listitem>
371 <para>A special target unit
372 for setting up a multi-user
373 system (non-graphical). This
374 is pulled in by
375 <filename>graphical.target</filename>.</para>
376
377 <para>Units that are needed
378 for a multi-user system shall
e3d84721
LP
379 add <varname>Wants=</varname>
380 dependencies for their unit to
381 this unit during
382 installation. This is best
383 configured via
384 <varname>WantedBy=multi-uer.target</varname>
385 in the unit's
386 <literal>[Install]</literal>
387 section.</para>
bd3d19a4
LP
388 </listitem>
389 </varlistentry>
9f235308
LP
390 <varlistentry>
391 <term><filename>network.target</filename></term>
392 <listitem>
393 <para>systemd automatically
394 adds dependencies of type
e3d84721
LP
395 <varname>After=</varname> for
396 this target unit to all SysV
397 init script service units with
398 an LSB header referring to the
9f235308
LP
399 <literal>$network</literal>
400 facility.</para>
aa6c53bf
LP
401
402 <para>This unit is supposed to
403 indicate when the network is
404 "up", but it is only very
a485210c 405 loosely defined what that is
aa6c53bf
LP
406 supposed to mean. Also see <ulink
407 url="http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget">Running
408 Services After the Network is
409 up</ulink> for more
410 information.</para>
9f235308
LP
411 </listitem>
412 </varlistentry>
e3d84721
LP
413 <varlistentry>
414 <term><filename>paths.target</filename></term>
415 <listitem>
416 <para>A special target unit
417 that sets up all path units
418 (see
419 <citerefentry><refentrytitle>systemd.path</refentrytitle><manvolnum>5</manvolnum></citerefentry>
420 for details) that shall be
421 active after boot.</para>
422
423 <para>It is recommended that
424 path units installed by
425 applications get pulled in via
426 <varname>Wants=</varname>
427 dependencies from this
428 unit. This is best configured
429 via a
430 <varname>WantedBy=paths.target</varname>
431 in the path unit's
432 <literal>[Install]</literal>
433 section.</para>
434 </listitem>
435 </varlistentry>
bd3d19a4
LP
436 <varlistentry>
437 <term><filename>poweroff.target</filename></term>
438 <listitem>
439 <para>A special target unit
440 for shutting down and powering off the system.</para>
441
442 <para>Applications wanting to
443 power off the system should start
444 this unit.</para>
445
446 <para><filename>runlevel0.target</filename>
447 is an alias for this target
448 unit, for compatibility with SysV.</para>
449 </listitem>
450 </varlistentry>
451 <varlistentry>
452 <term><filename>reboot.target</filename></term>
453 <listitem>
454 <para>A special target unit
455 for shutting down and rebooting the system.</para>
456
457 <para>Applications wanting to
458 reboot the system should start
459 this unit.</para>
460
461 <para><filename>runlevel6.target</filename>
462 is an alias for this target
463 unit, for compatibility with SysV.</para>
464 </listitem>
465 </varlistentry>
9f235308
LP
466 <varlistentry>
467 <term><filename>remote-fs.target</filename></term>
468 <listitem>
bd3d19a4
LP
469 <para>Similar to
470 <filename>local-fs.target</filename>,
471 but for remote mount
472 points.</para>
473
9f235308
LP
474 <para>systemd automatically
475 adds dependencies of type
e3d84721
LP
476 <varname>After=</varname> for
477 this target unit to all SysV
478 init script service units with
479 an LSB header referring to the
1e89ced1 480 <literal>$remote_fs</literal>
9f235308
LP
481 facility.</para>
482 </listitem>
483 </varlistentry>
e8d2f6cd
LP
484 <varlistentry>
485 <term><filename>remote-fs-setup.target</filename></term>
486 <listitem>
487 <para>This target unit is
488 automatically pulled in (by a
489 <varname>Wants=</varname> type
490 dependency) by all remote
491 mount points. It can be used
492 to run certain units when at
493 least one remote file system
494 is to be mounted. Note that
495 this target is not ordered
496 against the remote mounts, use
497 <filename>remote-fs-pre.target</filename>
54f874c5 498 for that (see below).</para>
e8d2f6cd
LP
499
500 <para>Again, this target unit
501 is <emphasis>not</emphasis>
502 suitable for ordering, it is
503 only useful for pulling in
504 other units.</para>
21e557ed
LP
505 </listitem>
506 </varlistentry>
bd3d19a4
LP
507 <varlistentry>
508 <term><filename>rescue.target</filename></term>
509 <listitem>
510 <para>A special target unit
511 for setting up the base system
512 and a rescue shell.</para>
513
514 <para><filename>runlevel1.target</filename>
515 is an alias for this target
516 unit, for compatibility with SysV.</para>
517 </listitem>
518 </varlistentry>
700e07ff 519 <varlistentry>
9e5f0f92 520 <term><filename>initrd-root-fs.target</filename></term>
700e07ff 521 <listitem>
e3d84721
LP
522 <para><citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>3</manvolnum></citerefentry>
523 automatically adds
524 dependencies of type
525 <varname>Before=</varname> to
526 the
527 <filename>sysroot.mount</filename>
528 unit, which is generated from
529 the kernel command line.
700e07ff
HH
530 </para>
531 </listitem>
532 </varlistentry>
bd3d19a4
LP
533 <varlistentry>
534 <term><filename>runlevel2.target</filename></term>
bd3d19a4 535 <term><filename>runlevel3.target</filename></term>
bd3d19a4 536 <term><filename>runlevel4.target</filename></term>
bd3d19a4
LP
537 <term><filename>runlevel5.target</filename></term>
538 <listitem>
669b04a4
LP
539 <para>These are targets that
540 are called whenever the SysV
bd3d19a4 541 compatibility code asks for
669b04a4
LP
542 runlevel 2, 3, 4, 5,
543 respectively. It is a good
544 idea to make this an alias for
bd3d19a4
LP
545 (i.e. symlink to)
546 <filename>multi-user.target</filename>
669b04a4
LP
547 (for runlevel 2) or
548 <filename>graphical.target</filename>
549 (the others).</para>
bd3d19a4
LP
550 </listitem>
551 </varlistentry>
9f235308
LP
552 <varlistentry>
553 <term><filename>shutdown.target</filename></term>
554 <listitem>
555 <para>A special target unit
556 that terminates the services
557 on system shutdown.</para>
558
559 <para>Services that shall be
560 terminated on system shutdown
e3d84721 561 shall add <varname>Conflicts=</varname>
bd3d19a4 562 dependencies to this unit for
3b6fdb5b
LP
563 their service unit, which is
564 implicitly done when
565 <varname>DefaultDependencies=yes</varname>
566 is set (the default).</para>
9f235308
LP
567 </listitem>
568 </varlistentry>
569 <varlistentry>
570 <term><filename>sigpwr.target</filename></term>
571 <listitem>
572 <para>A special target that is
573 started when systemd receives
574 the SIGPWR process signal,
575 which is normally sent by the
bd3d19a4 576 kernel or UPS daemons when
9f235308
LP
577 power fails.</para>
578 </listitem>
579 </varlistentry>
6edd7d0a
LP
580 <varlistentry>
581 <term><filename>sleep.target</filename></term>
582 <listitem>
583 <para>A special target unit
584 that is pulled in by
6524990f 585 <filename>suspend.target</filename>,
e3d84721
LP
586 <filename>hibernate.target</filename>
587 and
588 <filename>hybrid-sleep.target</filename>
6edd7d0a
LP
589 and may be used to hook units
590 into the sleep state
591 logic.</para>
592 </listitem>
593 </varlistentry>
9f235308
LP
594 <varlistentry>
595 <term><filename>sockets.target</filename></term>
596 <listitem>
597 <para>A special target unit
e3d84721
LP
598 that sets up all socket
599 units.(see
600 <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
601 for details) that shall be
602 active after boot.</para>
9f235308
LP
603
604 <para>Services that can be
605 socket-activated shall add
e3d84721
LP
606 <varname>Wants=</varname>
607 dependencies to this unit for
608 their socket unit during
609 installation. This is best
610 configured via a
611 <varname>WantedBy=sockets.target</varname>
612 in the socket unit's
613 <literal>[Install]</literal>
614 section.</para>
9f235308
LP
615 </listitem>
616 </varlistentry>
6edd7d0a
LP
617 <varlistentry>
618 <term><filename>suspend.target</filename></term>
619 <listitem>
620 <para>A special target unit
621 for suspending the
622 system. This pulls in
623 <filename>sleep.target</filename>.</para>
624 </listitem>
625 </varlistentry>
9f235308
LP
626 <varlistentry>
627 <term><filename>swap.target</filename></term>
628 <listitem>
629 <para>Similar to
630 <filename>local-fs.target</filename>, but for swap
631 partitions and swap
632 files.</para>
633 </listitem>
634 </varlistentry>
f92a18f5
LP
635 <varlistentry>
636 <term><filename>sysinit.target</filename></term>
637 <listitem>
638 <para>A special target unit
639 covering early boot-up scripts.</para>
f92a18f5
LP
640 </listitem>
641 </varlistentry>
feb88c9f
LP
642 <varlistentry>
643 <term><filename>syslog.socket</filename></term>
644 <listitem>
f848f8d8 645 <para>The socket unit
feb88c9f
LP
646 syslog implementations should
647 listen on. All userspace log
648 messages will be made
99800333
LP
649 available on this socket. For
650 more information about syslog
651 integration, please consult
652 the <ulink
653 url="http://www.freedesktop.org/wiki/Software/systemd/syslog">Syslog
654 Interface</ulink>
655 document.</para>
feb88c9f
LP
656 </listitem>
657 </varlistentry>
f5ccf26d
LP
658 <varlistentry>
659 <term><filename>system-update.target</filename></term>
660 <listitem>
661 <para>A special target unit
662 that is used for off-line
663 system updates.
664 <citerefentry><refentrytitle>systemd-system-update-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
665 will redirect the boot process
666 to this target if
667 <filename>/system-update</filename>
668 exists. For more information
669 see the <ulink
670 url="http://freedesktop.org/wiki/Software/systemd/SystemUpdates">System
671 Updates
672 Specification</ulink>.</para>
673 </listitem>
674 </varlistentry>
e3d84721
LP
675 <varlistentry>
676 <term><filename>timers.target</filename></term>
677 <listitem>
678 <para>A special target unit
679 that sets up all timer
680 units (see
681 <citerefentry><refentrytitle>systemd.timer</refentrytitle><manvolnum>5</manvolnum></citerefentry>
682 for details) that shall be
683 active after boot.</para>
684
685 <para>It is recommended that
686 timer units installed by
687 applications get pulled in via
688 <varname>Wants=</varname>
689 dependencies from this
690 unit. This is best configured
691 via
692 <varname>WantedBy=timers.target</varname>
693 in the timer unit's
694 <literal>[Install]</literal>
695 section.</para>
696 </listitem>
697 </varlistentry>
3b6fdb5b
LP
698 <varlistentry>
699 <term><filename>umount.target</filename></term>
700 <listitem>
701 <para>A special target unit
702 that umounts all mount and
703 automount points on system
704 shutdown.</para>
705
706 <para>Mounts that shall be
707 unmounted on system shutdown
708 shall add Conflicts
709 dependencies to this unit for
710 their mount unit, which is
711 implicitly done when
712 <varname>DefaultDependencies=yes</varname>
713 is set (the default).</para>
714 </listitem>
715 </varlistentry>
f5ccf26d 716
54f874c5
LP
717 </variablelist>
718 </refsect1>
719
720 <refsect1>
721 <title>Special System Units for Devices</title>
722
723 <para>Some target units are automatically pulled in as
724 devices of certain kinds show up in the system. These
725 may be used to automatically activate various services
726 based on the specific type of the available
727 hardware.</para>
728
729 <variablelist>
730 <varlistentry>
731 <term><filename>bluetooth.target</filename></term>
732 <listitem>
733 <para>This target is started
734 automatically as soon as a
735 Bluetooth controller is
736 plugged in or becomes
737 available at boot.</para>
738
739 <para>This may be used to pull
740 in Bluetooth management
741 daemons dynamically when
742 Bluetooth hardware is
743 found.</para>
744 </listitem>
745 </varlistentry>
746 <varlistentry>
747 <term><filename>printer.target</filename></term>
748 <listitem>
749 <para>This target is started
750 automatically as soon as a
751 printer is plugged in or
752 becomes available at
753 boot.</para>
754
755 <para>This may be used to pull
756 in printer management
757 daemons dynamically when
758 printer hardware is
759 found.</para>
760 </listitem>
761 </varlistentry>
762 <varlistentry>
763 <term><filename>smartcard.target</filename></term>
764 <listitem>
765 <para>This target is started
766 automatically as soon as a
767 smartcard controller is
768 plugged in or becomes
769 available at boot.</para>
770
771 <para>This may be used to pull
772 in printer management
773 daemons dynamically when
774 smartcard hardware is
775 found.</para>
776 </listitem>
777 </varlistentry>
778 <varlistentry>
779 <term><filename>sound.target</filename></term>
780 <listitem>
781 <para>This target is started
782 automatically as soon as a
783 sound card is plugged in or
784 becomes available at
785 boot.</para>
786
787 <para>This may be used to pull
788 in audio management daemons
789 dynamically when printer
790 hardware is found.</para>
791 </listitem>
792 </varlistentry>
793 </variablelist>
794 </refsect1>
795
796 <refsect1>
797 <title>Special Passive System Units </title>
798
799 <para>A number of special system targets are defined
800 that can be used to properly order boot-up of optional
801 services. These targets are generally not part of the
802 initial boot transaction, unless they are explicitly
803 pulled in by one of the implementing services. Note
804 specifically, that these <emphasis>passive</emphasis>
805 target units are generally not pulled in by the
806 consumer of a service, but by the provider of the
807 service. This means: a consuming service should order
808 itself after these targets (as appropriate), but not
809 pull it in. A providing service should order itself
810 before these targets (as appropriate) and pull it in
811 (via a <varname>Wants=</varname> type
812 dependency).</para>
813
814 <variablelist>
815 <varlistentry>
816 <term><filename>local-fs-pre.target</filename></term>
817 <listitem>
818 <para>This target unit is
819 automatically ordered before
820 all local mount points marked
821 with <option>auto</option>
822 (see above). It can be used to
823 execute certain units before
824 all local mounts.</para>
825 </listitem>
826 </varlistentry>
827 <varlistentry>
828 <term><filename>nss-lookup.target</filename></term>
829 <listitem>
830 <para>A target that should be
831 used as synchronization point
832 for all host/network name
833 service lookups. Note that
834 this is independent of
835 user/group name lookups for
836 which
837 <filename>nss-user-lookup.target</filename>
838 should be used. systemd
839 automatically adds
840 dependencies of type
841 <varname>After=</varname> for
842 this target unit to all SysV
843 init script service units with
844 an LSB header referring to the
845 <literal>$named</literal>
846 facility.</para>
847 </listitem>
848 </varlistentry>
849 <varlistentry>
850 <term><filename>nss-user-lookup.target</filename></term>
851 <listitem>
852 <para>A target that should be
853 used as synchronization point
854 for all user/group name
855 service lookups. Note that
856 this is independent of
857 host/network name lookups for
858 which
859 <filename>nss-lookup.target</filename>
860 should be used. </para>
861 </listitem>
862 </varlistentry>
863 <varlistentry>
864 <term><filename>remote-fs-pre.target</filename></term>
865 <listitem>
866 <para>This target unit is
867 automatically ordered before
868 all remote mount point units
869 (see above). It can be used to
870 run certain units before the
871 remote mounts are
872 established. Note that this
873 unit is generally not part of
874 the initial transaction,
875 unless the unit that wants to
876 be ordered before all remote
877 mounts pulls it in via a
878 <varname>Wants=</varname> type
879 dependency. If the unit wants
880 to be pulled in by the first
881 remote mount showing up it
882 should use
883 <filename>remote-fs-setup.target</filename>
884 (see above).</para>
885
886 <para>Again, this target unit
887 is <emphasis>not</emphasis>
888 suitable for pulling in other
889 units, it is only useful for
890 ordering.</para>
891 </listitem>
892 </varlistentry>
893 <varlistentry>
894 <term><filename>rpcbind.target</filename></term>
895 <listitem>
896 <para>systemd automatically
897 adds dependencies of type
898 <varname>After=</varname> for
899 this target unit to all SysV
900 init script service units with
901 an LSB header referring to the
902 <literal>$portmap</literal>
903 facility.</para>
904 </listitem>
905 </varlistentry>
906 <varlistentry>
907 <term><filename>time-sync.target</filename></term>
908 <listitem>
909 <para>systemd automatically
910 adds dependencies of type
911 <varname>After=</varname> for
912 this target unit to all SysV
913 init script service units with
914 an LSB header referring to the
915 <literal>$time</literal>
916 facility.</para>
917 </listitem>
918 </varlistentry>
9f235308
LP
919 </variablelist>
920 </refsect1>
921
922 <refsect1>
af2d49f7 923 <title>Special User Units</title>
9f235308 924
af2d49f7 925 <para>When systemd runs as a user instance, the
9f235308
LP
926 following special units are available, which have
927 similar definitions as their system counterparts:
bd3d19a4 928 <filename>default.target</filename>,
9f235308 929 <filename>shutdown.target</filename>,
e06e62f4
LP
930 <filename>sockets.target</filename>,
931 <filename>timers.target</filename>,
932 <filename>paths.target</filename>,
933 <filename>bluetooth.target</filename>,
934 <filename>printer.target</filename>,
935 <filename>smartcard.target</filename>,
936 <filename>sound.target</filename>.</para>
a1b256b0
LP
937
938 <para>In addition the following special unit is
939 understood only when systemd runs as service instance:</para>
940
941 <variablelist>
942 <varlistentry>
0e0320e0 943 <term><filename>exit.target</filename></term>
a1b256b0
LP
944 <listitem>
945 <para>A special service unit
946 for shutting down the
af2d49f7 947 user service manager.</para>
a1b256b0
LP
948
949 <para>Applications wanting to
af2d49f7
LP
950 terminate the user service
951 manager should start this
952 unit. If systemd receives
953 SIGTERM or SIGINT when running
954 as user service daemon it will
955 start this unit.</para>
a1b256b0
LP
956
957 <para>Normally, this pulls in
958 <filename>shutdown.target</filename>
959 which in turn should be
960 conflicted by all units that
961 want to be shut down on
af2d49f7 962 user service manager exit.</para>
a1b256b0
LP
963 </listitem>
964 </varlistentry>
965 </variablelist>
9f235308
LP
966 </refsect1>
967
968 <refsect1>
969 <title>See Also</title>
970 <para>
feb88c9f 971 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
5dc50792
LP
972 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
973 <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
974 <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
013d8a39 975 <citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
e3d84721 976 <citerefentry><refentrytitle>bootup</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
700e07ff 977 <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
9f235308
LP
978 </para>
979 </refsect1>
980
981</refentry>