chiark / gitweb /
man: document systemd-halt.service and friends
[elogind.git] / man / systemd-halt.service.xml
diff --git a/man/systemd-halt.service.xml b/man/systemd-halt.service.xml
new file mode 100644 (file)
index 0000000..6957fb9
--- /dev/null
@@ -0,0 +1,119 @@
+<?xml version='1.0'?> <!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+        "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+  This file is part of systemd.
+
+  Copyright 2012 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+
+<refentry id="systemd-halt.service">
+
+        <refentryinfo>
+                <title>systemd-halt.service</title>
+                <productname>systemd</productname>
+
+                <authorgroup>
+                        <author>
+                                <contrib>Developer</contrib>
+                                <firstname>Lennart</firstname>
+                                <surname>Poettering</surname>
+                                <email>lennart@poettering.net</email>
+                        </author>
+                </authorgroup>
+        </refentryinfo>
+
+        <refmeta>
+                <refentrytitle>systemd-halt.service</refentrytitle>
+                <manvolnum>8</manvolnum>
+        </refmeta>
+
+        <refnamediv>
+                <refname>systemd-halt.service</refname>
+                <refname>systemd-poweroff.service</refname>
+                <refname>systemd-reboot.service</refname>
+                <refname>systemd-kexec.service</refname>
+                <refname>systemd-shutdown</refname>
+                <refpurpose>systemd System Shutdown Logic</refpurpose>
+        </refnamediv>
+
+        <refsynopsisdiv>
+                <para><filename>systemd-halt.service</filename></para>
+                <para><filename>systemd-poweroff.service</filename></para>
+                <para><filename>systemd-reboot.service</filename></para>
+                <para><filename>systemd-kexec.service</filename></para>
+                <para><filename>/usr/lib/systemd/systemd-shutdown</filename></para>
+        </refsynopsisdiv>
+
+        <refsect1>
+                <title>Description</title>
+
+                <para><filename>systemd-halt.service</filename> is a
+                system service that is pulled in by
+                <filename>halt.target</filename> and is responsible
+                for the actual system halt. Similar,
+                <filename>systemd-poweroff.service</filename> is
+                pulled in by <filename>poweroff.target</filename>,
+                <filename>systemd-reboot.service</filename> by
+                <filename>reboot.target</filename> and
+                <filename>systemd-kexec.service</filename> by
+                <filename>kexec.target</filename> to execute the
+                respective actions.</para>
+
+                <para>When these services are run they ensure that PID
+                1 is replaced by the
+                <filename>/usr/lib/systemd/system-shutdown</filename>
+                tool which is then responsible for the actual
+                shutdown. Before shutting down this binary will try to
+                unmount all remaining file systems, disable all
+                remaining swap devices, detach all remaining storage
+                devices and kill all remaining processes.</para>
+
+                <para>Immediately before executing the actual system
+                halt/poweroff/reboot/kexec
+                <filename>system-shutdown</filename> will run all
+                executables in
+                <filename>/usr/lib/systemd/system-shutdown/</filename>
+                and pass one arguments to them: either
+                "<literal>halt</literal>",
+                "<literal>poweroff</literal>",
+                "<literal>reboot</literal>" or
+                "<literal>kexec</literal>", depending on the chosen
+                action. All executables in this directory are executed
+                in parallel, and execution of the action is not
+                continued before all executables finished.</para>
+
+                <para>Note that
+                <filename>systemd-halt.service</filename> (and the
+                related units) should never be executed
+                directly. Instead, trigger system shutdown with a
+                command such as "<literal>systemctl halt</literal>" or
+                suchlike.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>See Also</title>
+                <para>
+                        <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>reboot</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+                </para>
+        </refsect1>
+
+</refentry>