chiark / gitweb /
Revert "socket-proxyd: Add --listener option for listener/destination pairs."
[elogind.git] / man / systemctl.xml
index 1642a47273c0958b5e3411a7104ad4c5054139ed..567f39839c5a8a4d6cb987a418c2b1cbb867ce2d 100644 (file)
@@ -174,25 +174,13 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
         <term><option>--full</option></term>
 
         <listitem>
-          <para>Do not ellipsize unit names, cgroup members, and
+          <para>Do not ellipsize unit names, process tree entries, and
           truncate unit descriptions in the output of
           <command>list-units</command> and
           <command>list-jobs</command>.</para>
         </listitem>
       </varlistentry>
 
-      <varlistentry>
-        <term><option>--fail</option></term>
-
-        <listitem>
-          <para>If the requested operation conflicts with a pending
-          unfinished job, fail the command. If this is not specified,
-          the requested operation will replace the pending job, if
-          necessary. Do not confuse with
-          <option>--failed</option>.</para>
-        </listitem>
-      </varlistentry>
-
       <varlistentry>
         <term><option>--show-types</option></term>
 
@@ -202,27 +190,58 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
       </varlistentry>
 
       <varlistentry>
-        <term><option>--irreversible</option></term>
+        <term><option>--job-mode=</option></term>
 
         <listitem>
-          <para>Mark this transaction's jobs as irreversible. This prevents
-          future conflicting transactions from replacing these jobs.
-          The jobs can still be cancelled using the <command>cancel</command>
-          command.</para>
+        <para>When queuing a new job, control how to deal with already
+        queued jobs. Takes one of <literal>fail</literal>,
+        <literal>replace</literal>,
+        <literal>replace-irreversibly</literal>,
+        <literal>isolate</literal>,
+        <literal>ignore-dependencies</literal>,
+        <literal>ignore-requirements</literal> or
+        <literal>flush</literal>. Defaults to
+        <literal>replace</literal>, except when the
+        <command>isolate</command> command is used which implies the
+        <literal>isolate</literal> job mode.</para>
+
+        <para>If <literal>fail</literal> is specified and a requested
+        operation conflicts with a pending job (more specifically:
+        causes an already pending start job to be reversed into a stop
+        job or vice versa), cause the operation to fail.</para>
+
+        <para>If <literal>replace</literal> (the default) is
+        specified, any conflicting pending job will be replaced, as
+        necessary.</para>
+
+        <para>If <literal>replace-irreversibly</literal> is specified,
+        operate like <literal>replace</literal>, but also mark the new
+        jobs as irreversible. This prevents future conflicting
+        transactions from replacing these jobs. The jobs can still be
+        cancelled using the <command>cancel</command> command.</para>
+
+        <para><literal>isolate</literal> is only valid for start
+        operations and causes all other units to be stopped when the
+        specified unit is started. This mode is always used when the
+        <command>isolate</command> command is used.</para>
+
+        <para><literal>flush</literal> will cause all queued jobs to
+        be canceled when the new job is enqueued.</para>
+
+        <para>If <literal>ignore-dependencies</literal> is specified,
+        then all unit dependencies are ignored for this new job and
+        the operation is executed immediately. If passed, no required
+        units of the unit passed will be pulled in, and no ordering
+        dependencies will be honored. This is mostly a debugging and
+        rescue tool for the administrator and should not be used by
+        applications.</para>
+
+        <para><literal>ignore-requirements</literal> is similar to
+        <literal>ignore-dependencies</literal> but only causes the
+        requirement dependencies to be ignored, the ordering
+        dependencies will still be honoured.</para>
         </listitem>
-      </varlistentry>
 
-      <varlistentry>
-        <term><option>--ignore-dependencies</option></term>
-
-        <listitem>
-          <para>When enqueuing a new job, ignore all its dependencies
-          and execute it immediately. If passed, no required units of
-          the unit passed will be pulled in, and no ordering
-          dependencies will be honored. This is mostly a debugging and
-          rescue tool for the administrator and should not be used by
-          applications.</para>
-        </listitem>
       </varlistentry>
 
       <varlistentry>
@@ -444,21 +463,20 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
         <term><option>--host</option></term>
 
         <listitem>
-          <para>Execute operation remotely. Specify a hostname, or
-          username and hostname separated by <literal>@</literal>, to connect to. This
-          will use SSH to talk to the remote systemd
+          <para>Execute the operation remotely. Specify a hostname, or
+          username and hostname separated by <literal>@</literal>, to
+          connect to. This will use SSH to talk to the remote systemd
           instance.</para>
         </listitem>
       </varlistentry>
 
       <varlistentry>
-        <term><option>-P</option></term>
-        <term><option>--privileged</option></term>
+          <term><option>-M</option></term>
+          <term><option>--machine=</option></term>
 
-        <listitem>
-          <para>Acquire privileges via PolicyKit before executing the
-          operation.</para>
-        </listitem>
+          <listitem><para>Execute the operation on a local
+          container. Specify a container name to connect
+          to.</para></listitem>
       </varlistentry>
 
       <varlistentry>
@@ -542,6 +560,17 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
           </listitem>
         </varlistentry>
 
+        <varlistentry>
+          <term><command>list-timers</command></term>
+
+          <listitem>
+            <para>List timer units ordered by the time they elapse next.</para>
+
+            <para>See also the options <option>--all</option> and
+            <option>--failed</option>.</para>
+          </listitem>
+        </varlistentry>
+
         <varlistentry>
           <term><command>start <replaceable>NAME</replaceable>...</command></term>
 
@@ -566,7 +595,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             their configuration. Note that this will reload the
             service-specific configuration, not the unit configuration
             file of systemd. If you want systemd to reload the
-            configuration file of a unit use the
+            configuration file of a unit, use the
             <command>daemon-reload</command> command. In other words:
             for the example case of Apache, this will reload Apache's
             <filename>httpd.conf</filename> in the web server, not the
@@ -692,12 +721,12 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
 
           <listitem>
             <para>Show properties of one or more units, jobs, or the
-            manager itself. If no argument is specified properties of
-            the manager will be shown. If a unit name is specified
+            manager itself. If no argument is specified, properties of
+            the manager will be shown. If a unit name is specified,
             properties of the unit is shown, and if a job id is
-            specified properties of the job is shown. By default, empty
+            specified, properties of the job is shown. By default, empty
             properties are suppressed. Use <option>--all</option> to
-            show those too. To select specific properties to show use
+            show those too. To select specific properties to show, use
             <option>--property=</option>. This command is intended to be
             used whenever computer-parsable output is required. Use
             <command>status</command> if you are looking for formatted
@@ -711,14 +740,14 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
           <listitem>
             <para>Set the specified unit properties at runtime where
             this is supported. This allows changing configuration
-            parameter properties such as resource management controls at
+            parameter properties such as resource control settings at
             runtime. Not all properties may be changed at runtime, but
-            many resource management settings (primarily those in
-            <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
+            many resource control settings (primarily those in
+            <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
             may. The changes are applied instantly, and stored on disk
             for future boots, unless <option>--runtime</option> is
-            passed, in which case the settings only apply until the next
-            reboot. The syntax of the property assignment follows
+            passed, in which case the settings only apply until the
+            next reboot. The syntax of the property assignment follows
             closely the syntax of assignments in unit files.</para>
 
             <para>Example: <command>systemctl set-property foobar.service CPUShares=777</command></para>
@@ -830,10 +859,11 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             case of socket units), and so on.</para>
 
             <para>Depending on whether <option>--system</option>,
-            <option>--user</option> or <option>--global</option> is
-            specified, this enables the unit for the system, for the
-            calling user only or for all future logins of all
-            users. Note that in the last case, no systemd daemon
+            <option>--user</option>, <option>--runtime</option>,
+            or <option>--global</option> is specified, this enables the unit
+            for the system, for the calling user only, for only this boot of
+            the system, or for all future logins of all users, or only this
+            boot.  Note that in the last case, no systemd daemon
             configuration is reloaded.</para>
           </listitem>
         </varlistentry>
@@ -860,8 +890,9 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             </para>
 
             <para>This command honors <option>--system</option>,
-            <option>--user</option>, <option>--global</option> in a
-            similar way as <command>enable</command>.</para>
+            <option>--user</option>, <option>--runtime</option> and
+            <option>--global</option> in a similar way as
+            <command>enable</command>.</para>
           </listitem>
         </varlistentry>
 
@@ -918,7 +949,9 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             start them. This is a stronger version of
             <command>disable</command>, since it prohibits all kinds of
             activation of the unit, including manual activation. Use
-            this option with care.</para>
+            this option with care. This honors the
+            <option>--runtime</option> option to only mask temporarily
+            until the next reoobt of the system.</para>
           </listitem>
         </varlistentry>
 
@@ -1075,7 +1108,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
           <listitem>
             <para>Reload systemd manager configuration. This will reload
             all unit files and recreate the entire dependency
-            tree. While the daemon is reloaded, all sockets systemd
+            tree. While the daemon is being reloaded, all sockets systemd
             listens on on behalf of user configuration will stay
             accessible.</para> <para>This command should not be confused
             with the <command>load</command> or
@@ -1089,9 +1122,9 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             <para>Reexecute the systemd manager. This will serialize the
             manager state, reexecute the process and deserialize the
             state again. This command is of little use except for
-            debugging and package upgrades. Sometimes it might be
+            debugging and package upgrades. Sometimes, it might be
             helpful as a heavy-weight <command>daemon-reload</command>.
-            While the daemon is reexecuted, all sockets systemd listening
+            While the daemon is being reexecuted, all sockets systemd listening
             on behalf of user configuration will stay accessible.
             </para>
           </listitem>
@@ -1162,7 +1195,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
           </listitem>
         </varlistentry>
         <varlistentry>
-          <term><command>reboot</command></term>
+          <term><command>reboot <optional><replaceable>arg</replaceable></optional></command></term>
 
           <listitem>
             <para>Shut down and reboot the system. This is mostly
@@ -1175,6 +1208,16 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             specified twice, the operation is immediately executed
             without terminating any processes or unmounting any file
             systems. This may result in data loss.</para>
+
+            <para>If the optional argument
+            <replaceable>arg</replaceable> is given, it will be passed
+            as the optional argument to the
+            <citerefentry><refentrytitle>reboot</refentrytitle><manvolnum>2</manvolnum></citerefentry>
+            system call. The value is architecture and firmware
+            specific. As an example, <literal>recovery</literal> might
+            be used to trigger system recovery, and
+            <literal>fota</literal> might be used to trigger a
+            <quote>firmware over the air</quote> update.</para>
           </listitem>
         </varlistentry>
         <varlistentry>
@@ -1251,6 +1294,28 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
       </variablelist>
     </refsect2>
 
+    <refsect2>
+      <title>Parameter Syntax</title>
+
+    <para>For unit commands the specified
+    <replaceable>NAME</replaceable> should be the full name of the
+    unit, or an abbreviated name which is automatically extended with
+    the <literal>.service</literal> suffix.
+    <programlisting># systemctl start foo.service</programlisting> is equivalent to:
+    <programlisting># systemctl start foo</programlisting>
+    Note that (absolute) paths to device nodes are automatically converted to device unit names, and other (absolute) paths to mount unit names.
+    <programlisting># systemctl status /dev/sda
+# systemctl status /home</programlisting> is equivalent to:
+    <programlisting># systemctl status dev-sda.device
+# systemctl status home.mount</programlisting></para>
+
+    <para>For unit file commands the
+    specified <replaceable>NAME</replaceable> should be the full name
+    of the unit file, or the absolute path to the unit file.
+    <programlisting># systemctl link /path/to/foo.service</programlisting>
+    </para>
+    </refsect2>
+
   </refsect1>
 
   <refsect1>
@@ -1286,7 +1351,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
       <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
-      <citerefentry><refentrytitle>systemd.cgroup</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><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>