chiark / gitweb /
systemctl: at full stop after last message before shutting down
[elogind.git] / man / systemd.special.xml.in
index 0af9c6e7bb1a20ea6ed69ba0d1cb2cad4d9cac60..c6c2393fc3b4121b7204507e27d515c1f57c2c81 100644 (file)
         <refsynopsisdiv>
                 <para><filename>basic.target</filename>,
                 <filename>ctrl-alt-del.target</filename>,
+                <filename>dbus.service</filename>,
+                <filename>dbus.target</filename>,
                 <filename>default.target</filename>,
                 <filename>display-manager.service</filename>,
-                <filename>emergency.service</filename>,
+                <filename>emergency.target</filename>,
+                <filename>exit.service</filename>,
                 <filename>graphical.target</filename>,
                 <filename>halt.target</filename>,
                 <filename>kbrequest.target</filename>,
                 <filename>rescue.target</filename>,
                 <filename>rpcbind.target</filename>,
                 <filename>rtc-set.target</filename>,
-                <filename>runlevel0.target</filename>,
-                <filename>runlevel1.target</filename>,
                 <filename>runlevel2.target</filename>,
                 <filename>runlevel3.target</filename>,
                 <filename>runlevel4.target</filename>,
                 <filename>runlevel5.target</filename>,
-                <filename>runlevel6.target</filename>
                 <filename>shutdown.target</filename>,
                 <filename>sigpwr.target</filename>,
                 <filename>sockets.target</filename>,
                 <filename>swap.target</filename>,
+                <filename>sysinit.target</filename>,
+                <filename>@SPECIAL_SYSLOG_SERVICE@</filename>,
                 <filename>syslog.target</filename>,
                 <filename>systemd-initctl.service</filename>,
                 <filename>systemd-initctl.socket</filename>,
                 <filename>systemd-logger.service</filename>,
-                <filename>systemd-logger.socket</filename></para>
+                <filename>systemd-logger.socket</filename>,
+                <filename>umount.target</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
                                         target unit to all SysV
                                         service units configured for
                                         runlevel 1 to 5.</para>
-                                        <para>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.</para>
+                                        <para>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.</para>
                                 </listitem>
                         </varlistentry>
                         <varlistentry>
                                         <filename>reboot.target</filename>.</para>
                                 </listitem>
                         </varlistentry>
+                        <varlistentry>
+                                <term><filename>dbus.service</filename></term>
+                                <listitem>
+                                        <para>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.</para>
+
+                                        <para>Units should generally
+                                        avoid depending on this unit
+                                        directly and instead refer to
+                                        the
+                                        <filename>dbus.target</filename>
+                                        unit instead, which pulls this
+                                        one in directly or indirectly
+                                        via socket-based activation.</para>
+                                </listitem>
+                        </varlistentry>
+                        <varlistentry>
+                                <term><filename>dbus.target</filename></term>
+                                <listitem>
+                                        <para>Administrators should
+                                        ensure that this target pulls
+                                        in a service unit with the
+                                        name or alias of
+                                        <filename>dbus.service</filename>
+                                        (or a socket unit that
+                                        activates this
+                                        service).</para>
+                                </listitem>
+                        </varlistentry>
                         <varlistentry>
                                 <term><filename>default.target</filename></term>
                                 <listitem>
                                         <para>The display manager
                                         service. Usually this should
                                         be aliased (symlinked) to
-                                        <filename>gdm.service</filename>
+                                        <filename>xdm.service</filename>
                                         or a similar display manager
                                         service.</para>
                                         <para>systemd automatically
                                         adds dependencies of type
                                         After for this target unit to
                                         all SysV init script service
-                                        units with an LSB header
+                                        units with a LSB header
                                         referring to the
                                         <literal>$x-display-manager</literal>
                                         facility, for compatibility
                                 </listitem>
                         </varlistentry>
                         <varlistentry>
-                                <term><filename>emergency.service</filename></term>
+                                <term><filename>emergency.target</filename></term>
                                 <listitem>
-                                        <para>A special service unit
+                                        <para>A special target unit
                                         that starts an emergency
                                         shell on the main
                                         console. This unit is supposed
                                         mounts listed in
                                         <filename>/etc/fstab</filename>
                                         that have the
-                                        <literal>auto</literal> and
-                                        <literal>comment=systemd.mount</literal>
+                                        <option>auto</option> and
+                                        <option>comment=systemd.mount</option>
                                         mount options set.</para>
 
                                         <para>systemd automatically
                                 <listitem>
                                         <para>The mail transfer agent
                                         (MTA) service. Usually this
-                                        should pull in all units
+                                        should pull-in all units
                                         necessary for
                                         sending/receiving mails on the
                                         local host.</para>
                                         facility.</para>
                                 </listitem>
                         </varlistentry>
-                        <varlistentry>
-                                <term><filename>runlevel0.target</filename></term>
-                                <listitem>
-                                        <para>This is a target that is
-                                        called whever the SysV
-                                        compatibility code asks for
-                                        runlevel 0. This is an alias
-                                        for
-                                        <filename>poweroff.target</filename>,
-                                        for compatibility with
-                                        SysV.</para>
-                                </listitem>
-                        </varlistentry>
-                        <varlistentry>
-                                <term><filename>runlevel1.target</filename></term>
-                                <listitem>
-                                        <para>This is a target that is
-                                        called whever the SysV
-                                        compatibility code asks for
-                                        runlevel 1. This is an alias
-                                        for
-                                        <filename>rescue.target</filename>,
-                                        for compatibility with
-                                        SysV.</para>
-                                </listitem>
-                        </varlistentry>
                         <varlistentry>
                                 <term><filename>runlevel2.target</filename></term>
                                 <listitem>
                                         <filename>graphical.target</filename>.</para>
                                 </listitem>
                         </varlistentry>
-                        <varlistentry>
-                                <term><filename>runlevel6.target</filename></term>
-                                <listitem>
-                                        <para>This is a target that is
-                                        called whever the SysV
-                                        compatibility code asks for
-                                        runlevel 6. This is an alias
-                                        for
-                                        <filename>reboot.target</filename>,
-                                        for compatibility with
-                                        SysV.</para>
-                                </listitem>
-                        </varlistentry>
                         <varlistentry>
                                 <term><filename>shutdown.target</filename></term>
                                 <listitem>
                                         terminated on system shutdown
                                         shall add Conflicts
                                         dependencies to this unit for
-                                        their service unit during
-                                        installation.</para>
+                                        their service unit, which is
+                                        implicitly done when
+                                        <varname>DefaultDependencies=yes</varname>
+                                        is set (the default).</para>
 
                                         <para>systemd automatically
                                         adds dependencies of type
                                         files.</para>
                                 </listitem>
                         </varlistentry>
+                        <varlistentry>
+                                <term><filename>sysinit.target</filename></term>
+                                <listitem>
+                                        <para>A special target unit
+                                        covering early boot-up scripts.</para>
+                                        <para>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.</para>
+                                </listitem>
+                        </varlistentry>
+                        <varlistentry>
+                                <term><filename>@SPECIAL_SYSLOG_SERVICE@</filename></term>
+                                <listitem>
+                                        <para>A special unit for the
+                                        syslog daemon. As soon as
+                                        this service is fully started
+                                        up systemd will connect to it
+                                        and use it for logging if it
+                                        has been configured for
+                                        that.</para>
+
+                                        <para>Units should generally
+                                        avoid depending on this unit
+                                        directly and instead refer to
+                                        the
+                                        <filename>syslog.target</filename>
+                                        unit instead, which pulls this
+                                        one in directly or indirectly
+                                        via socket-based activation.</para>
+                                </listitem>
+                        </varlistentry>
                         <varlistentry>
                                 <term><filename>syslog.target</filename></term>
                                 <listitem>
                                         kernel log buffer.</para>
                                 </listitem>
                         </varlistentry>
+                        <varlistentry>
+                                <term><filename>umount.target</filename></term>
+                                <listitem>
+                                        <para>A special target unit
+                                        that umounts all mount and
+                                        automount points on system
+                                        shutdown.</para>
+
+                                        <para>Mounts that shall be
+                                        unmounted on system shutdown
+                                        shall add Conflicts
+                                        dependencies to this unit for
+                                        their mount unit, which is
+                                        implicitly done when
+                                        <varname>DefaultDependencies=yes</varname>
+                                        is set (the default).</para>
+                                </listitem>
+                        </varlistentry>
                 </variablelist>
         </refsect1>
 
                 <filename>shutdown.target</filename>,
                 <filename>sockets.target</filename>,
                 <filename>swap.target</filename>.</para>
+
+                <para>In addition the following special unit is
+                understood only when systemd runs as service instance:</para>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><filename>exit.service</filename></term>
+                                <listitem>
+                                        <para>A special service unit
+                                        for shutting down the
+                                        session.</para>
+
+                                        <para>Applications wanting to
+                                        terminate the session should
+                                        start this unit. If systemd
+                                        receives SIGTERM or SIGINT
+                                        when running as session daemon
+                                        it will start this
+                                        unit.</para>
+
+                                        <para>Normally, this pulls in
+                                        <filename>shutdown.target</filename>
+                                        which in turn should be
+                                        conflicted by all units that
+                                        want to be shut down on
+                                        session exit.</para>
+                                </listitem>
+                        </varlistentry>
+                </variablelist>
         </refsect1>
 
         <refsect1>