SYSTEMD.SPECIAL(7)systemd.specialSYSTEMD.SPECIAL(7)NAMEsystemd.special - Special systemd units
SYNOPSIS
basic.target, bluetooth.target, ctrl-alt-del.target, cryptsetup.target,
dbus.service, dbus.socket, default.target, display-manager.service,
emergency.target, exit.service, final.service, getty.target,
graphical.target, hibernate.target, http-daemon.target, halt.target,
kbrequest.target, kexec.target, local-fs.target, local-fs-pre.target,
mail-transfer-agent.target, multi-user.target, network.target,
nss-lookup.target, nss-user-lookup.target, poweroff.target,
printer.target, reboot.target, remote-fs.target, remote-fs-pre.target,
rescue.target, rpcbind.target, runlevel2.target, runlevel3.target,
runlevel4.target, runlevel5.target, shutdown.target, sigpwr.target,
sleep.target, smartcard.target, sockets.target, sound.target,
suspend.target, swap.target, sysinit.target, syslog.service,
syslog.socket, syslog.target, time-sync.target, umount.target
DESCRIPTION
A few units are treated specially by systemd. They have special
internal semantics and cannot be renamed.
SPECIAL SYSTEM UNITS
basic.target
A special target unit covering early boot-up.
systemd automatically adds dependencies of the types Requires and
After for this target unit to all SysV service units configured for
runlevel 1 to 5.
Usually this should pull-in all sockets, mount points, swap devices
and other basic initialization necessary for the general purpose
daemons. Most normal daemons should have dependencies of type After
and Requires on this unit.
bluetooth.target
This target is started automatically as soon as a bluetooth
controller is plugged in or becomes available at boot.
ctrl-alt-del.target
systemd starts this target whenever Control+Alt+Del is pressed on
the console. Usually this should be aliased (symlinked) to
reboot.target.
cryptsetup.target
A target that pulls in setup services for all encrypted block
devices.
dbus.service
A special unit for the D-Bus system bus. As soon as this service is
fully started up systemd will connect to it and register its
service.
dbus.socket
A special unit for the D-Bus system bus socket. All units with
Type=dbus automatically gain a dependency on this unit.
default.target
The default unit systemd starts at bootup. Usually this should be
aliased (symlinked) to multi-user.target or graphical.target.
The default unit systemd starts at bootup can be overridden with
the systemd.unit= kernel command line option.
display-manager.service
The display manager service. Usually this should be aliased
(symlinked) to gdm.service or a similar display manager service.
systemd automatically adds dependencies of type After for this
target unit to all SysV init script service units with a LSB header
referring to the $x-display-manager facility, for compatibility
with Debian.
emergency.target
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 systemd.unit= and has otherwise little use.
final.target
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.
getty.target
A special target unit that pulls in all local TTY getty instances.
graphical.target
A special target unit for setting up a graphical login screen. This
pulls in multi-user.target.
Units that are needed for graphical login shall add Wants
dependencies for their unit to this unit (or multi-user.target)
during installation.
hibernate.target
A special target unit for hibernating the system. This pulls in
sleep.target.
http-daemon.target
A target for pulling in an HTTP server if there is any.
systemd automatically adds dependencies of type After for this
target unit to all SysV init script service units with a LSB header
referring to the $httpd facility.
halt.target
A special target unit for shutting down and halting the system.
Applications wanting to halt the system should start this unit.
kbrequest.target
systemd starts this target whenever Alt+ArrowUp is pressed on the
console. This is a good candidate to be aliased (symlinked) to
rescue.target.
kexec.target
A special target unit for shutting down and rebooting the system
via kexec.
Applications wanting to reboot the system with kexec should start
this unit.
local-fs.target
systemd automatically adds dependencies of type After to all mount
units that refer to local mount points for this target unit. In
addition, systemd adds dependencies of type Wants to this target
unit for those mounts listed in /etc/fstab that have the auto and
comment=systemd.mount mount options set.
systemd automatically adds dependencies of type After for this
target unit to all SysV init script service units with an LSB
header referring to the $local_fs facility.
local-fs-pre.target
This target unit is automatically ordered before all local mount
points marked with auto (see above). It can be used to execute
certain units before all local mounts.
mail-transfer-agent.target
The mail transfer agent (MTA) service. Usually this should pull-in
all units necessary for sending/receiving mails on the local host.
systemd automatically adds dependencies of type After for this
target unit to all SysV init script service units with an LSB
header referring to the $mail-transfer-agent or
$mail-transport-agent facilities, for compatibility with Debian.
multi-user.target
A special target unit for setting up a multi-user system
(non-graphical). This is pulled in by graphical.target.
Units that are needed for a multi-user system shall add Wants
dependencies to this unit for their unit during installation.
network.target
systemd automatically adds dependencies of type After for this
target unit to all SysV init script service units with an LSB
header referring to the $network facility.
nss-lookup.target
A target that should be used as synchronization point for all
host/network name service lookups. Note that this is independent of
user/group name lookups for which nss-user-lookup.target should be
used. systemd automatically adds dependencies of type After for
this target unit to all SysV init script service units with an LSB
header referring to the $named facility.
nss-user-lookup.target
A target that should be used as synchronization point for all
user/group name service lookups. Note that this is independent of
host/network name lookups for which nss-lookup.target should be
used.
poweroff.target
A special target unit for shutting down and powering off the
system.
Applications wanting to power off the system should start this
unit.
runlevel0.target is an alias for this target unit, for
compatibility with SysV.
printer.target
This target is started automatically as soon as a printer is
plugged in or becomes available at boot.
reboot.target
A special target unit for shutting down and rebooting the system.
Applications wanting to reboot the system should start this unit.
runlevel6.target is an alias for this target unit, for
compatibility with SysV.
remote-fs.target
Similar to local-fs.target, but for remote mount points.
systemd automatically adds dependencies of type After for this
target unit to all SysV init script service units with an LSB
header referring to the $remote_fs facility.
remote-fs-pre.target
This target unit is automatically ordered before all remote mount
points marked with auto (see above). It can be used to execute
certain units before all remote mounts.
rescue.target
A special target unit for setting up the base system and a rescue
shell.
runlevel1.target is an alias for this target unit, for
compatibility with SysV.
rpcbind.target
systemd automatically adds dependencies of type After for this
target unit to all SysV init script service units with an LSB
header referring to the $rpcbind facility.
runlevel2.target
This is a target that is called whenever the SysV compatibility
code asks for runlevel 2. It is a good idea to make this an alias
for (i.e. symlink to) multi-user.target.
runlevel3.target
This is a target that is called whenever the SysV compatibility
code asks for runlevel 3. It is a good idea to make this an alias
for (i.e. symlink to) multi-user.target or graphical.target.
runlevel4.target
This is a target that is called whenever the SysV compatibility
code asks for runlevel 4. It is a good idea to make this an alias
for (i.e. symlink to) multi-user.target or graphical.target.
runlevel5.target
This is a target that is called whenever the SysV compatibility
code asks for runlevel 5. It is a good idea to make this an alias
for (i.e. symlink to) multi-user.target or graphical.target.
shutdown.target
A special target unit that terminates the services on system
shutdown.
Services that shall be terminated on system shutdown shall add
Conflicts dependencies to this unit for their service unit, which
is implicitly done when DefaultDependencies=yes is set (the
default).
systemd automatically adds dependencies of type Conflicts to this
target unit for all SysV init script service units that shall be
terminated in SysV runlevels 0 or 6.
sigpwr.target
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.
sleep.target
A special target unit that is pulled in by suspend.target and
hibernate.target and may be used to hook units into the sleep state
logic.
smartcard.target
This target is started automatically as soon as a smartcard
controller is plugged in or becomes available at boot.
sockets.target
A special target unit that sets up all service sockets.
Services that can be socket-activated shall add Wants dependencies
to this unit for their socket unit during installation.
sound.target
This target is started automatically as soon as a sound card is
plugged in or becomes available at boot.
suspend.target
A special target unit for suspending the system. This pulls in
sleep.target.
swap.target
Similar to local-fs.target, but for swap partitions and swap files.
sysinit.target
A special target unit covering early boot-up scripts.
systemd automatically adds dependencies of the types Wants and
After for all SysV service units configured for runlevels that are
not 0 to 6 to this target unit. This covers the special boot-up
runlevels some distributions have, such as S or b.
syslog.service
The syslog service if any. Implementations should create a symlink
from the actual syslog implementation to this generic name for
activating it.
syslog.socket
The socket unit where syslog implementations should listen on. All
userspace log messages will be made available on this socket.
syslog.target
systemd automatically adds dependencies of type After for this
target unit to all SysV init script service units with an LSB
header referring to the $syslog facility.
time-sync.target
systemd automatically adds dependencies of type After for this
target unit to all SysV init script service units with an LSB
header referring to the $time facility.
umount.target
A special target unit that umounts all mount and automount points
on system shutdown.
Mounts that shall be unmounted on system shutdown shall add
Conflicts dependencies to this unit for their mount unit, which is
implicitly done when DefaultDependencies=yes is set (the default).
SPECIAL USER UNITS
When systemd runs as a user instance, the following special units are
available, which have similar definitions as their system counterparts:
default.target, shutdown.target, sockets.target
In addition the following special unit is understood only when systemd
runs as service instance:
exit.service
A special service unit for shutting down the user service manager.
Applications wanting to terminate the user service manager should
start this unit. If systemd receives SIGTERM or SIGINT when running
as user service daemon it will start this unit.
Normally, this pulls in shutdown.target which in turn should be
conflicted by all units that want to be shut down on user service
manager exit.
SEE ALSOsystemd(1), systemd.unit(5), systemd.service(5), systemd.socket(5),
systemd.target(5)AUTHOR
Lennart Poettering <lennart@poettering.net>
Developer
systemd 02/15/2013 SYSTEMD.SPECIAL(7)