Copyright 2010 Lennart Poettering
systemd is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
+ 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
- General Public License for more details.
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
+ You should have received a copy of the GNU Lesser General Public License
along with systemd; If not, see <http://www.gnu.org/licenses/>.
-->
<term><option>--type=</option></term>
<term><option>-t</option></term>
- <listitem><para>When listing units,
- limit display to certain unit
- types. If not specified units of all
- types will be shown. The argument
- should be a unit type name such as
- <option>service</option>,
- <option>socket</option> and
- similar.</para></listitem>
+ <listitem><para>The argument should
+ be a unit type name such as
+ <option>service</option> and
+ <option>socket</option>,
+ or a unit load state such as
+ <option>loaded</option> and
+ <option>masked</option>.
+ </para>
+
+ <para>If the argument is a unit type,
+ when listing units, limit display to
+ certain unit types. If not specified
+ units of all types will be shown.</para>
+
+ <para>If the argument is a unit load state,
+ when listing units, limit display to
+ certain unit types. If not specified
+ units of in all load states will be
+ shown.</para>
+
+ <para>As a special case, if the argument
+ is <option>help</option>, a list of
+ allowed values will be printed and the
+ program will exit.</para>
+ </listitem>
</varlistentry>
<varlistentry>
<term><option>-p</option></term>
<listitem><para>When showing
- unit/job/manager information, limit
+ unit/job/manager properties, limit
display to certain properties as
specified as argument. If not
specified all set properties are
<listitem><para>When listing units,
show all units, regardless of their
state, including inactive units. When
- showing unit/job/manager information,
+ showing unit/job/manager properties,
show all properties regardless whether
they are set or not.</para></listitem>
</varlistentry>
execute it immediately. If passed no
required units of the unit passed will
be pulled in, and no ordering
- dependencies will be honoured. This is
+ 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>
+ <term><option>-i</option></term>
+ <term><option>--ignore-inhibitors</option></term>
+
+ <listitem><para>When system shutdown
+ or a sleep state is requested, ignore
+ inhibitor locks. Applications can
+ establish inhibitor locks to avoid
+ that certain important operations
+ (such as CD burning or suchlike) are
+ interrupted by system shutdown or a
+ sleep state. Any user may take these
+ locks and privileged users may
+ override these locks. If any locks are
+ taken, shutdown and sleep state
+ requests will normally fail
+ (regardless if privileged or not) and
+ list of active locks is
+ printed. However if
+ <option>--ignore-inhibitors</option>
+ is specified the locks are ignored and
+ not printed, and the operation
+ attempted anyway, possibly requiring
+ additional
+ privileges.</para></listitem>
+ </varlistentry>
+
<varlistentry>
<term><option>--quiet</option></term>
<term><option>-q</option></term>
STDOUT in
<command>snapshot</command>,
<command>is-active</command>,
+ <command>is-failed</command>,
<command>enable</command> and
<command>disable</command>.</para></listitem>
</varlistentry>
enqueued and <command>systemctl</command> will
wait until it is completed. By passing this
argument it is only verified and
- enqueued.</para></listitem> </varlistentry>
+ enqueued.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--no-legend</option></term>
+
+ <listitem><para>Do not print a legend, i.e.
+ the column headers and the footer with hints.
+ </para></listitem>
+ </varlistentry>
<varlistentry>
<term><option>--no-pager</option></term>
- <listitem><para>Do not pipe output into a
- pager.</para></listitem>
- </varlistentry>
+ <listitem><para>Do not pipe output into a
+ pager.</para></listitem>
+ </varlistentry>
<varlistentry>
<term><option>--system</option></term>
<command>systemctl</command> will
query the user on the terminal for the
necessary secrets. Use this option to
- switch this behavior off. In this
- case the password must be supplied by
- some other means (for example
- graphical password agents) or the
- service might fail.</para></listitem>
+ switch this behavior off. In this case
+ the password must be supplied by some
+ other means (for example graphical
+ password agents) or the service might
+ fail. This also disables querying the
+ user for authentication for privileged
+ operations.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-f</option></term>
<listitem><para>When used with
- <command>enable</command>, override any
+ <command>enable</command>, overwrite any
existing conflicting
symlinks.</para></listitem>
<command>halt</command>,
<command>poweroff</command>,
<command>reboot</command> or
- <command>kexec</command> execute
+ <command>kexec</command> execute the
selected operation without shutting
down all units. However, all processes
will be killed forcibly and all file
systems are unmounted or remounted
read-only. This is hence a drastic but
relatively safe option to request an
- immediate reboot.</para></listitem>
+ immediate reboot. If
+ <option>--force</option> is specified
+ twice for these operations, they will
+ be executed immediately without
+ terminating any processes or umounting
+ any file systems. Warning: specifying
+ <option>--force</option> twice with
+ any of these operations might result
+ in data loss.</para></listitem>
</varlistentry>
<varlistentry>
- <term><option>--defaults</option></term>
+ <term><option>--root=</option></term>
<listitem><para>When used with
- <command>disable</command>, ensures
- that only the symlinks created by
- <command>enable</command> are removed,
- not all symlinks pointing to the unit
- file that shall be
- disabled.</para></listitem>
+ <command>enable</command>/<command>disable</command>/<command>is-enabled</command> (and
+ related commands), use alternative
+ root path when looking for unit
+ files.</para></listitem>
</varlistentry>
<varlistentry>
- <term><option>--root=</option></term>
+ <term><option>--runtime</option></term>
<listitem><para>When used with
- <command>enable</command>/
- <command>disable</command>/
- <command>is-enabled</command>,
- use alternative root path for systemd
- install.</para></listitem>
+ <command>enable</command>/<command>disable</command>/<command>is-enabled</command> (and related commands), make
+ changes only temporarily, so that they
+ are dropped on the next reboot. This
+ will have the effect that changes are
+ not made in subdirectories of
+ <filename>/etc</filename> but in
+ <filename>/run</filename>, with
+ identical immediate effects, however,
+ since the latter is lost on reboot,
+ the changes are lost
+ too.</para></listitem>
</varlistentry>
<varlistentry>
PolicyKit before executing the
operation.</para></listitem>
</varlistentry>
+
+ <varlistentry>
+ <term><option>--lines=</option></term>
+ <term><option>-n</option></term>
+
+ <listitem><para>When used with
+ <command>status</command> controls the
+ number of journal lines to show,
+ counting from the most recent
+ ones. Takes a positive integer
+ argument. Defaults to
+ 10.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--output=</option></term>
+ <term><option>-o</option></term>
+
+ <listitem><para>When used with
+ <command>status</command> controls the
+ formatting of the journal entries that
+ are shown. For the available choices
+ see
+ <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Defaults
+ to
+ <literal>short</literal>.</para></listitem>
+ </varlistentry>
+
</variablelist>
<para>The following commands are understood:</para>
this will also print the current unit
state to STDOUT.</para></listitem>
</varlistentry>
+ <varlistentry>
+ <term><command>is-failed [NAME...]</command></term>
+
+ <listitem><para>Check whether any of
+ the specified units are failed.
+ Returns an exit code
+ 0 if at least one is failed, non-zero
+ otherwise. Unless
+ <option>--quiet</option> is specified
+ this will also print the current unit
+ state to STDOUT.</para></listitem>
+ </varlistentry>
<varlistentry>
<term><command>status [NAME...|PID...]</command></term>
<listitem><para>Show terse runtime
status information about one or more
- units. This function is intended to
- generate human-readable output. If you
- are looking for computer-parsable
- output, use <command>show</command>
- instead. If a PID is passed
- information about the unit the process
- of the PID belongs to is
- shown.</para></listitem>
+ units, followed by its most recent log
+ data from the journal. This function
+ is intended to generate human-readable
+ output. If you are looking for
+ computer-parsable output, use
+ <command>show</command> instead. If a
+ PID is passed information about the
+ unit the process of the PID belongs to
+ is shown.</para></listitem>
</varlistentry>
<varlistentry>
<term><command>show [NAME...|JOB...]</command></term>
looking for formatted human-readable
output.</para></listitem>
</varlistentry>
+ <varlistentry>
+ <term><command>help [NAME...|PID...]</command></term>
+ <listitem><para>Show manual pages for
+ one or more units, if available. If a
+ PID is passed the manual pages for the
+ unit the process of the PID belongs to
+ is shown.</para></listitem>
+ </varlistentry>
<varlistentry>
<term><command>reset-failed [NAME...]</command></term>
command.</para></listitem>
</varlistentry>
+ <varlistentry>
+ <term><command>list-unit-files</command></term>
+
+ <listitem><para>List installed unit files.
+ </para></listitem>
+ </varlistentry>
+
<varlistentry>
<term><command>enable [NAME...]</command></term>
- <listitem><para>Enable one or more
- unit files, as specified on the
+ <listitem><para>Enable one or
+ more unit files or unit file
+ instances, as specified on the
command line. This will create a
- number of symlinks as encoded in the
- <literal>[Install]</literal> sections
- of the unit files. After the symlinks
- have been created the systemd
- configuration is reloaded (in a way
- that is equivalent to
- <command>daemon-reload</command>) to
- ensure the changes are taken into
+ number of symlinks as encoded in
+ the <literal>[Install]</literal>
+ sections of the unit files. After
+ the symlinks have been created the
+ systemd configuration is reloaded
+ (in a way that is equivalent to
+ <command>daemon-reload</command>)
+ to ensure the changes are taken into
account immediately. Note that this
does not have the effect that any of
the units enabled are also started at
- the same time. If this is desired a
- separate <command>start</command>
- command must be invoked for the
- unit.</para>
+ the same time. If this is desired
+ a separate <command>start</command>
+ command must be invoked for the unit.
+ Also note that in case of instance
+ enablement, symlinks named same as
+ instances are created in install
+ location, however they all point to
+ the same template unit file.</para>
<para>This command will
print the actions executed. This
configuration directory, and hence
undoes the changes made by
<command>enable</command>. Note
- however that this by default removes
+ however that this removes
all symlinks to the unit files
(i.e. including manual additions), not
just those actually created by
- <command>enable</command>. If only the
- symlinks that are suggested by default
- shall be removed, pass
- <option>--defaults</option>. This
+ <command>enable</command>. This call
implicitly reloads the systemd daemon
configuration after completing the
disabling of the units. Note that this
command does not implicitly stop the
- units that is being disabled. If this
+ units that are being disabled. If this
is desired an additional
- <command>stop</command>command should
+ <command>stop</command> command should
be executed afterwards.</para>
<para>This command will print the
<term><command>is-enabled [NAME...]</command></term>
<listitem><para>Checks whether any of
- the specified unit files is enabled
+ the specified unit files are enabled
(as with
<command>enable</command>). Returns an
exit code of 0 if at least one is
- enabled, non-zero
- otherwise.</para></listitem>
+ enabled, non-zero otherwise. Prints
+ the current enable status. To suppress
+ this output use
+ <option>--quiet</option>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>reenable [NAME...]</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 [NAME...]</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. For more information on 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>mask [NAME...]</command></term>
+
+ <listitem><para>Mask one or more unit
+ files, as specified on the command
+ line. This will link these units to
+ <filename>/dev/null</filename>, making
+ it impossible to 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>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>unmask [NAME...]</command></term>
+
+ <listitem><para>Unmask one or more
+ unit files, as specified on the
+ command line. This will undo the
+ effect of
+ <command>mask</command>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>link [NAME...]</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 isn't installed
+ directly in the unit search
+ path.</para>
+ </listitem>
</varlistentry>
<varlistentry>
their numeric job
IDs. If no job id is specified, cancel all pending jobs.</para></listitem>
</varlistentry>
- <varlistentry>
- <term><command>monitor</command></term>
-
- <listitem><para>Monitor unit/job
- changes. This is mostly useful for
- debugging purposes and prints a line
- each time systemd loads or unloads a
- unit configuration file, or a unit
- property changes.</para></listitem>
- </varlistentry>
<varlistentry>
<term><command>dump</command></term>
system. This is mostly equivalent to
<command>start halt.target</command>
but also prints a wall message to all
- users. If
- combined with <option>--force</option>
- shutdown of all running services is
- skipped, however all processes are killed
- and all file systems are unmounted or
+ users. If combined with
+ <option>--force</option> shutdown of
+ all running services is skipped,
+ however all processes are killed and
+ all file systems are unmounted or
mounted read-only, immediately
- followed by the
- system halt.</para></listitem>
+ followed by the system halt. If
+ <option>--force</option> is specified
+ twice the operation is immediately
+ executed without terminating any
+ processes or unmounting any file
+ systems. This may result in data
+ loss.</para></listitem>
</varlistentry>
<varlistentry>
<term><command>poweroff</command></term>
power-off the system. This is mostly
equivalent to <command>start
poweroff.target</command> but also
- prints a wall message to all
- users. If
+ prints a wall message to all users. If
combined with <option>--force</option>
shutdown of all running services is
- skipped, however all processes are killed
- and all file systems are unmounted or
- mounted read-only, immediately
- followed by the
- powering off.</para></listitem>
+ skipped, however all processes are
+ killed and all file systems are
+ unmounted or mounted read-only,
+ immediately followed by the powering
+ off. If <option>--force</option> is
+ specified twice the operation is
+ immediately executed without
+ terminating any processes or
+ unmounting any file systems. This may
+ result in data loss.</para></listitem>
</varlistentry>
<varlistentry>
<term><command>reboot</command></term>
- <listitem><para>Shut down and
- reboot the system. This is mostly
- equivalent to <command>start
+ <listitem><para>Shut down and reboot
+ the system. This is mostly equivalent
+ to <command>start
reboot.target</command> but also
- prints a wall message to all
- users. If
+ prints a wall message to all users. If
combined with <option>--force</option>
shutdown of all running services is
- skipped, however all processes are killed
- and all file systems are unmounted or
- mounted read-only, immediately
- followed by the
- reboot.</para></listitem>
+ skipped, however all processes are
+ killed and all file systems are
+ unmounted or mounted read-only,
+ immediately followed by the reboot. If
+ <option>--force</option> is specified
+ twice the operation is immediately
+ executed without terminating any
+ processes or unmounting any file
+ systems. This may result in data
+ loss.</para></listitem>
</varlistentry>
<varlistentry>
<term><command>kexec</command></term>
<option>--user</option> option) and
will fail otherwise.</para></listitem>
</varlistentry>
+ <varlistentry>
+ <term><command>suspend</command></term>
+
+ <listitem><para>Suspend the
+ system. This will trigger activation
+ of the special
+ <filename>suspend.target</filename>
+ target.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><command>hibernate</command></term>
+
+ <listitem><para>Hibernate the
+ system. This will trigger activation
+ of the special
+ <filename>hibernate.target</filename>
+ target.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><command>hybrid-sleep</command></term>
+
+ <listitem><para>Hibernate and suspend
+ the system. This will trigger
+ activation of the special
+ <filename>hybrid-sleep.target</filename>
+ target.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><command>switch-root [ROOT] [INIT]</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. Takes two arguments: the
+ directory to make 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 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>
</refsect1>
<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>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+ <citerefentry><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>
</para>
</refsect1>