chiark / gitweb /
man: remove references to systemadm from systemctl man page
[elogind.git] / man / systemctl.xml
index 7cbaa6ccb0112ca831c0b3a02751bb42f29c053e..caad13172b197f8e79bfde2afb59a0becb0dc8cb 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version='1.0'?> <!--*-nxml-*-->
+<?xml version='1.0'?> <!--*- Mode: nxml; nxml-child-indent: 2; indent-tabs-mode: nil -*-->
 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
 
@@ -98,9 +98,10 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
         <term><option>--state=</option></term>
 
         <listitem>
-        <para>The argument should be a comma-separated list of unit LOAD,
-        SUB, or ACTIVE states. When listing units, show only those
-        in specified states.</para>
+        <para>The argument should be a comma-separated list of unit
+        LOAD, SUB, or ACTIVE states. When listing units, show only
+        those in specified states. Use <option>--state=failed</option>
+        to show only failed units.</para>
         </listitem>
       </varlistentry>
 
@@ -150,9 +151,12 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
 
         <listitem>
           <para>Show reverse dependencies between units with
-          <command>list-dependencies</command>, i.e. units with
-          dependencies of type <varname>Wants=</varname> or
-          <varname>Requires=</varname> on the given unit.
+          <command>list-dependencies</command>, i.e. follow
+          dependencies of type <varname>WantedBy=</varname>,
+          <varname>RequiredBy=</varname>,
+          <varname>RequiredByOverrridable=</varname>,
+          <varname>PartOf=</varname>, <varname>BoundBy=</varname>,
+          instead of <varname>Wants=</varname> and similar.
           </para>
         </listitem>
       </varlistentry>
@@ -163,10 +167,20 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
         <listitem>
           <para>With <command>list-dependencies</command>, show the
           units that are ordered before the specified unit. In other
-          words, list the units that are in the <varname>After=</varname>
-          directive of the specified unit, have the specified unit in
-          their <varname>Before=</varname> directive, or are otherwise
-          implicit dependencies of the specified unit.</para>
+          words, recursively list units following the
+          <varname>After=</varname> dependency.</para>
+
+          <para>Note that any <varname>After=</varname> dependency is
+          automatically mirrored to create a
+          <varname>Before=</varname> dependency. Temporal dependencies
+          may be specified explicitly, but are also created implicitly
+          for units which are <varname>WantedBy=</varname> targets
+          (see
+          <citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>),
+          and as a result of other directives (for example
+          <varname>RequiresMountsFor=</varname>). Both explicitly
+          and implicitly introduced dependencies are shown with
+          <command>list-dependencies</command>.</para>
         </listitem>
       </varlistentry>
 
@@ -176,10 +190,8 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
         <listitem>
           <para>With <command>list-dependencies</command>, show the
           units that are ordered after the specified unit. In other
-          words, list the units that are in the <varname>Before=</varname>
-          directive of the specified unit, have the specified unit in
-          their <varname>After=</varname> directive, or otherwise depend
-          on the specified unit.</para>
+          words, recursively list units following the
+          <varname>Before=</varname> dependency.</para>
         </listitem>
       </varlistentry>
 
@@ -321,6 +333,11 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
       <xi:include href="user-system-options.xml" xpointer="user" />
       <xi:include href="user-system-options.xml" xpointer="system" />
 
+      <!-- we do not document -failed here, as it has been made
+           redundant by -state=failed, which it predates. To keep
+           things simple we only document the new switch, while
+           keeping the old one around for compatibility only. -->
+
       <varlistentry>
         <term><option>--no-wall</option></term>
 
@@ -369,7 +386,6 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
           querying the user for authentication for privileged
           operations.</para>
         </listitem>
-
       </varlistentry>
 
       <varlistentry>
@@ -465,7 +481,7 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
 
         <listitem>
           <para>When used with <command>enable</command>,
-          <command>disable</command>,
+          <command>disable</command>, <command>edit</command>,
           (and related commands), make changes only temporarily, so
           that they are lost on the next reboot. This will have the
           effect that changes are not made in subdirectories of
@@ -580,7 +596,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             </para>
 
             <para>See also the options <option>--show-types</option>,
-            <option>--all</option>, and <option>--failed</option>.</para>
+            <option>--all</option>, and <option>--state=</option>.</para>
           </listitem>
         </varlistentry>
 
@@ -594,7 +610,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             </para>
 
             <para>See also the options <option>--all</option> and
-            <option>--failed</option>.</para>
+            <option>--state=</option>.</para>
           </listitem>
         </varlistentry>
 
@@ -688,7 +704,9 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
 
           <listitem>
             <para>Start the unit specified on the command line and its
-            dependencies and stop all others.</para>
+            dependencies and stop all others. If a unit name with no
+            extension is given, an extension of
+            <literal>.target</literal> will be assumed.</para>
 
             <para>This is similar to changing the runlevel in a
             traditional init system. The <command>isolate</command>
@@ -842,15 +860,30 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
         </varlistentry>
 
         <varlistentry>
-          <term><command>list-dependencies <replaceable>NAME</replaceable></command></term>
+          <term>
+            <command>list-dependencies</command>
+            <optional><replaceable>NAME</replaceable></optional>
+          </term>
 
           <listitem>
-            <para>Shows required and wanted units of the specified
-            unit. If no unit is specified,
-            <filename>default.target</filename> is implied. Target units
-            are recursively expanded.  When <option>--all</option> is
-            passed, all other units are recursively expanded as
-            well.</para>
+            <para>Shows units required and wanted by the specified
+            unit. This recursively lists units following the
+            <varname>Requires=</varname>,
+            <varname>RequiresOverridable=</varname>,
+            <varname>Requisite=</varname>,
+            <varname>RequisiteOverridable=</varname>,
+            <varname>Wants=</varname>, <varname>BindsTo=</varname>
+            dependencies. If no unit is specified,
+            <filename>default.target</filename> is implied.</para>
+
+            <para>By default, only target units are recursively
+            expanded. When <option>--all</option> is passed, all other
+            units are recursively expanded as well.</para>
+
+            <para>Options <option>--reverse</option>,
+            <option>--after</option>, <option>--before</option>
+            may be used to change what types of dependencies
+            are shown.</para>
           </listitem>
         </varlistentry>
       </variablelist>
@@ -958,6 +991,56 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
           </listitem>
         </varlistentry>
 
+        <varlistentry>
+          <term><command>reenable <replaceable>NAME</replaceable>...</command></term>
+
+          <listitem>
+            <para>Reenable one or more unit files, as specified on the
+            command line. This is a combination of
+            <command>disable</command> and <command>enable</command> and
+            is useful to reset the symlinks a unit is enabled with to
+            the defaults configured in the <literal>[Install]</literal>
+            section of the unit file.</para>
+          </listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><command>preset <replaceable>NAME</replaceable>...</command></term>
+
+          <listitem>
+            <para>Reset one or more unit files, as specified on the
+            command line, to the defaults configured in the preset
+            policy files. This has the same effect as
+            <command>disable</command> or <command>enable</command>,
+            depending how the unit is listed in the preset files.</para>
+
+            <para>Use <option>--preset-mode=</option> to control
+            whether units shall be enabled and disabled, or only
+            enabled, or only disabled.</para>
+
+            <para>For more information on the preset policy format,
+            see
+            <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+            For more information on the concept of presets, please
+            consult the <ulink
+            url="http://freedesktop.org/wiki/Software/systemd/Preset">Preset</ulink>
+            document.</para>
+          </listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><command>preset-all</command></term>
+
+          <listitem>
+            <para>Resets all installed unit files to the defaults
+            configured in the preset policy file (see above).</para>
+
+            <para>Use <option>--preset-mode=</option> to control
+            whether units shall be enabled and disabled, or only
+            enabled, or only disabled.</para>
+          </listitem>
+        </varlistentry>
+
         <varlistentry>
           <term><command>is-enabled <replaceable>NAME</replaceable>...</command></term>
 
@@ -985,7 +1068,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
                 <tbody>
                   <row>
                     <entry><literal>enabled</literal></entry>
-                    <entry morerows='1'>Enabled through a symlink in <filename>.wants</filename> directory (permanently or just in <filename>/run</filename>)</entry>
+                    <entry morerows='1'>Enabled through a symlink in <filename>.wants</filename> directory (permanently or just in <filename>/run</filename>).</entry>
                     <entry morerows='1'>0</entry>
                   </row>
                   <row>
@@ -993,7 +1076,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
                   </row>
                   <row>
                     <entry><literal>linked</literal></entry>
-                    <entry morerows='1'>Made available through a symlink to the unit file (permanently or just in <filename>/run</filename>)</entry>
+                    <entry morerows='1'>Made available through a symlink to the unit file (permanently or just in <filename>/run</filename>).</entry>
                     <entry morerows='1'>1</entry>
                   </row>
                   <row>
@@ -1001,7 +1084,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
                   </row>
                   <row>
                     <entry><literal>masked</literal></entry>
-                    <entry morerows='1'>Disabled entirely (permanently or just in <filename>/run</filename>)</entry>
+                    <entry morerows='1'>Disabled entirely (permanently or just in <filename>/run</filename>).</entry>
                     <entry morerows='1'>1</entry>
                   </row>
                   <row>
@@ -1009,12 +1092,17 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
                   </row>
                   <row>
                     <entry><literal>static</literal></entry>
-                    <entry>Unit is not enabled, but has no provisions for enabling in [Install] section</entry>
+                    <entry>Unit file is not enabled, and has no provisions for enabling in the <literal>[Install]</literal> section.</entry>
+                    <entry>0</entry>
+                  </row>
+                  <row>
+                    <entry><literal>indirect</literal></entry>
+                    <entry>Unit file itself is not enabled, but it has a non-empty <varname>Also=</varname> setting in the <literal>[Install]</literal> section, listing other unit files that might be enabled.</entry>
                     <entry>0</entry>
                   </row>
                   <row>
                     <entry><literal>disabled</literal></entry>
-                    <entry>Unit is not enabled</entry>
+                    <entry>Unit file is not enabled.</entry>
                     <entry>1</entry>
                   </row>
                 </tbody>
@@ -1024,56 +1112,6 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
           </listitem>
         </varlistentry>
 
-        <varlistentry>
-          <term><command>reenable <replaceable>NAME</replaceable>...</command></term>
-
-          <listitem>
-            <para>Reenable one or more unit files, as specified on the
-            command line. This is a combination of
-            <command>disable</command> and <command>enable</command> and
-            is useful to reset the symlinks a unit is enabled with to
-            the defaults configured in the <literal>[Install]</literal>
-            section of the unit file.</para>
-          </listitem>
-        </varlistentry>
-
-        <varlistentry>
-          <term><command>preset <replaceable>NAME</replaceable>...</command></term>
-
-          <listitem>
-            <para>Reset one or more unit files, as specified on the
-            command line, to the defaults configured in the preset
-            policy files. This has the same effect as
-            <command>disable</command> or <command>enable</command>,
-            depending how the unit is listed in the preset files.</para>
-
-            <para>Use <option>--preset-mode=</option> to control
-            whether units shall be enabled and disabled, or only
-            enabled, or only disabled.</para>
-
-            <para>For more information on the preset policy format,
-            see
-            <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
-            For more information on the concept of presets, please
-            consult the <ulink
-            url="http://freedesktop.org/wiki/Software/systemd/Preset">Preset</ulink>
-            document.</para>
-          </listitem>
-        </varlistentry>
-
-        <varlistentry>
-          <term><command>preset-all</command></term>
-
-          <listitem>
-            <para>Resets all installed unit files to the defaults
-            configured in the preset policy file (see above).</para>
-
-            <para>Use <option>--preset-mode=</option> to control
-            whether units shall be enabled and disabled, or only
-            enabled, or only disabled.</para>
-          </listitem>
-        </varlistentry>
-
         <varlistentry>
           <term><command>mask <replaceable>NAME</replaceable>...</command></term>
 
@@ -1100,6 +1138,20 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
           </listitem>
         </varlistentry>
 
+        <varlistentry>
+          <term><command>link <replaceable>FILENAME</replaceable>...</command></term>
+
+          <listitem>
+            <para>Link a unit file that is not in the unit file search
+            paths into the unit file search path. This requires an
+            absolute path to a unit file. The effect of this can be
+            undone with <command>disable</command>. The effect of this
+            command is that a unit file is available for
+            <command>start</command> and other commands although it
+            is not installed directly in the unit search path.</para>
+          </listitem>
+        </varlistentry>
+
         <varlistentry>
           <term><command>add-wants <replaceable>TARGET</replaceable>
           <replaceable>NAME</replaceable>...</command></term>
@@ -1120,16 +1172,39 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
         </varlistentry>
 
         <varlistentry>
-          <term><command>link <replaceable>FILENAME</replaceable>...</command></term>
+          <term><command>edit <replaceable>NAME</replaceable>...</command></term>
 
           <listitem>
-            <para>Link a unit file that is not in the unit file search
-            paths into the unit file search path. This requires an
-            absolute path to a unit file. The effect of this can be
-            undone with <command>disable</command>. The effect of this
-            command is that a unit file is available for
-            <command>start</command> and other commands although it
-            is not installed directly in the unit search path.</para>
+            <para>Edit a drop-in snippet or a whole replacement file if
+            <option>--full</option> is specified, to extend or override the
+            specified unit.</para>
+
+            <para>Depending on whether <option>--system</option> (the default),
+            <option>--user</option>, or <option>--global</option> is specified,
+            this creates a drop-in file for each unit either for the system,
+            for the calling user or for all futures logins of all users. Then,
+            the editor (see the "Environment" section below) is invoked on
+            temporary files which will be written to the real location if the
+            editor exits successfully.</para>
+
+            <para>If <option>--full</option> is specified, this will copy the
+            original units instead of creating drop-in files.</para>
+
+            <para>If <option>--runtime</option> is specified, the changes will
+            be made temporarily in <filename>/run</filename> and they will be
+            lost on the next reboot.</para>
+
+            <para>If the temporary file is empty upon exit the modification of
+            the related unit is canceled</para>
+
+            <para>After the units have been edited, systemd configuration is
+            reloaded (in a way that is equivalent to <command>daemon-reload</command>).
+            </para>
+
+            <para>Note that this command cannot be used to remotely edit units
+            and that you cannot temporarily edit units which are in
+            <filename>/etc</filename> since they take precedence over
+            <filename>/run</filename>.</para>
           </listitem>
         </varlistentry>
 
@@ -1137,8 +1212,9 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
           <term><command>get-default</command></term>
 
           <listitem>
-            <para>Get the default target specified
-            via <filename>default.target</filename> link.</para>
+            <para>Return the default target to boot into. This returns
+            the target unit name <filename>default.target</filename>
+            is aliased (symlinked) to.</para>
           </listitem>
         </varlistentry>
 
@@ -1146,10 +1222,12 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
           <term><command>set-default <replaceable>NAME</replaceable></command></term>
 
           <listitem>
-            <para>Set the default target to boot into. Command links
-            <filename>default.target</filename> to the given unit.</para>
+            <para>Set the default target to boot into. This sets
+            (symlinks) the <filename>default.target</filename> alias
+            to the given target unit.</para>
           </listitem>
         </varlistentry>
+
       </variablelist>
     </refsect2>
 
@@ -1471,6 +1549,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             <quote>firmware over the air</quote> update.</para>
           </listitem>
         </varlistentry>
+
         <varlistentry>
           <term><command>kexec</command></term>
 
@@ -1484,6 +1563,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             immediately followed by the reboot.</para>
           </listitem>
         </varlistentry>
+
         <varlistentry>
           <term><command>exit</command></term>
 
@@ -1493,8 +1573,29 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             with the <option>--user</option> option) and will fail
             otherwise.</para>
           </listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><command>switch-root <replaceable>ROOT</replaceable> <optional><replaceable>INIT</replaceable></optional></command></term>
 
+          <listitem>
+            <para>Switches to a different root directory and executes a
+            new system manager process below it. This is intended for
+            usage in initial RAM disks ("initrd"), and will transition
+            from the initrd's system manager process (a.k.a "init"
+            process) to the main system manager process. This call takes two
+            arguments: the directory that is to become the new root directory, and
+            the path to the new system manager binary below it to
+            execute as PID 1. If the latter is omitted or the empty
+            string, a systemd binary will automatically be searched for
+            and used as init. If the system manager path is omitted or
+            equal to the empty string, the state of the initrd's system
+            manager process is passed to the main system manager, which
+            allows later introspection of the state of the services
+            involved in the initrd boot.</para>
+          </listitem>
         </varlistentry>
+
         <varlistentry>
           <term><command>suspend</command></term>
 
@@ -1504,6 +1605,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             </para>
           </listitem>
         </varlistentry>
+
         <varlistentry>
           <term><command>hibernate</command></term>
 
@@ -1513,6 +1615,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             </para>
           </listitem>
         </varlistentry>
+
         <varlistentry>
           <term><command>hybrid-sleep</command></term>
 
@@ -1522,26 +1625,6 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             <filename>hybrid-sleep.target</filename> target.</para>
           </listitem>
         </varlistentry>
-        <varlistentry>
-          <term><command>switch-root <replaceable>ROOT</replaceable> <optional><replaceable>INIT</replaceable></optional></command></term>
-
-          <listitem>
-            <para>Switches to a different root directory and executes a
-            new system manager process below it. This is intended for
-            usage in initial RAM disks ("initrd"), and will transition
-            from the initrd's system manager process (a.k.a "init"
-            process) to the main system manager process. This call takes two
-            arguments: the directory that is to become the new root directory, and
-            the path to the new system manager binary below it to
-            execute as PID 1. If the latter is omitted or the empty
-            string, a systemd binary will automatically be searched for
-            and used as init. If the system manager path is omitted or
-            equal to the empty string, the state of the initrd's system
-            manager process is passed to the main system manager, which
-            allows later introspection of the state of the services
-            involved in the initrd boot.</para>
-          </listitem>
-        </varlistentry>
       </variablelist>
     </refsect2>
 
@@ -1560,9 +1643,9 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
       <programlisting># systemctl start sshd</programlisting> and
       <programlisting># systemctl start sshd.service</programlisting>
       are equivalent, as are
-      <programlisting># systemctl isolate snapshot-11</programlisting>
+      <programlisting># systemctl isolate default</programlisting>
       and
-      <programlisting># systemctl isolate snapshot-11.snapshot</programlisting>
+      <programlisting># systemctl isolate default.target</programlisting>
       Note that (absolute) paths to device nodes are automatically
       converted to device unit names, and other (absolute) paths to
       mount unit names.
@@ -1608,20 +1691,41 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
     code otherwise.</para>
   </refsect1>
 
-  <xi:include href="less-variables.xml" />
+  <refsect1>
+    <title>Environment</title>
+
+    <variablelist class='environment-variables'>
+      <varlistentry>
+        <term><varname>$SYSTEMD_EDITOR</varname></term>
+
+        <listitem><para>Editor to use when editing units; overrides
+        <varname>$EDITOR</varname> and <varname>$VISUAL</varname>. If neither
+        <varname>$SYSTEMD_EDITOR</varname> nor <varname>$EDITOR</varname> nor
+        <varname>$VISUAL</varname> are present or if it is set to an empty
+        string or if their execution failed, systemctl will try to execute well
+        known editors in this order:
+        <citerefentry><refentrytitle>nano</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+        <citerefentry><refentrytitle>vim</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+        <citerefentry><refentrytitle>vi</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
+        </para></listitem>
+      </varlistentry>
+    </variablelist>
+    <xi:include href="less-variables.xml" xpointer="pager"/>
+    <xi:include href="less-variables.xml" xpointer="less"/>
+  </refsect1>
 
   <refsect1>
     <title>See Also</title>
     <para>
       <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
-      <citerefentry><refentrytitle>systemadm</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+      <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>systemd.resource-management</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
       <citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
-      <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+      <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>glob</refentrytitle><manvolnum>7</manvolnum></citerefentry>
     </para>
   </refsect1>