| <?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 2010 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="systemctl"> |
| |
| <refentryinfo> |
| <title>systemctl</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>systemctl</refentrytitle> |
| <manvolnum>1</manvolnum> |
| </refmeta> |
| |
| <refnamediv> |
| <refname>systemctl</refname> |
| <refpurpose>Control the systemd system and service manager</refpurpose> |
| </refnamediv> |
| |
| <refsynopsisdiv> |
| <cmdsynopsis> |
| <command>systemctl <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="req">COMMAND</arg> <arg choice="opt" rep="repeat">NAME</arg></command> |
| </cmdsynopsis> |
| </refsynopsisdiv> |
| |
| <refsect1> |
| <title>Description</title> |
| |
| <para><command>systemctl</command> may be used to |
| introspect and control the state of the |
| <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry> |
| system and service manager.</para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Options</title> |
| |
| <para>The following options are understood:</para> |
| |
| <variablelist> |
| <varlistentry> |
| <term><option>--help</option></term> |
| <term><option>-h</option></term> |
| |
| <listitem><para>Prints a short help |
| text and exits.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--version</option></term> |
| |
| <listitem><para>Prints a short version |
| string and exits.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <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> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--property=</option></term> |
| <term><option>-p</option></term> |
| |
| <listitem><para>When showing |
| unit/job/manager properties, limit |
| display to certain properties as |
| specified as argument. If not |
| specified all set properties are |
| shown. The argument should be a |
| property name, such as |
| <literal>MainPID</literal>. If |
| specified more than once all |
| properties with the specified names |
| are shown.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--all</option></term> |
| <term><option>-a</option></term> |
| |
| <listitem><para>When listing units, |
| show all units, regardless of their |
| state, including inactive units. When |
| showing unit/job/manager properties, |
| show all properties regardless whether |
| they are set or not.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--failed</option></term> |
| |
| <listitem><para>When listing units, |
| show only failed units. Do not confuse |
| with |
| <option>--fail</option>.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--full</option></term> |
| |
| <listitem><para>Do not ellipsize unit |
| names 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>--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 honoured. This is |
| mostly a debugging and rescue tool for |
| the administrator and should not be |
| used by |
| applications.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--quiet</option></term> |
| <term><option>-q</option></term> |
| |
| <listitem><para>Suppress output to |
| STDOUT in |
| <command>snapshot</command>, |
| <command>is-active</command>, |
| <command>enable</command> and |
| <command>disable</command>.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--no-block</option></term> |
| |
| <listitem><para>Do not synchronously wait for |
| the requested operation to finish. If this is |
| not specified the job will be verified, |
| enqueued and <command>systemctl</command> will |
| wait until it is completed. By passing this |
| argument it is only verified and |
| 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> |
| |
| <varlistentry> |
| <term><option>--system</option></term> |
| |
| <listitem><para>Talk to the systemd |
| system manager. (Default)</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--user</option></term> |
| |
| <listitem><para>Talk to the systemd |
| manager of the calling user.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--order</option></term> |
| <term><option>--require</option></term> |
| |
| <listitem><para>When used in |
| conjunction with the |
| <command>dot</command> command (see |
| below), selects which dependencies are |
| shown in the dependency graph. If |
| <option>--order</option> is passed |
| only dependencies of type |
| <varname>After=</varname> or |
| <varname>Before=</varname> are |
| shown. If <option>--require</option> |
| is passed only dependencies of type |
| <varname>Requires=</varname>, |
| <varname>RequiresOverridable=</varname>, |
| <varname>Requisite=</varname>, |
| <varname>RequisiteOverridable=</varname>, |
| <varname>Wants=</varname> and |
| <varname>Conflicts=</varname> are |
| shown. If neither is passed, shows |
| dependencies of all these |
| types.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--no-wall</option></term> |
| |
| <listitem><para>Don't send wall |
| message before |
| halt, power-off, reboot.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--global</option></term> |
| |
| <listitem><para>When used with |
| <command>enable</command> and |
| <command>disable</command>, operate on the |
| global user configuration |
| directory, thus enabling or disabling |
| a unit file globally for all future |
| logins of all users.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--no-reload</option></term> |
| |
| <listitem><para>When used with |
| <command>enable</command> and |
| <command>disable</command>, do not |
| implicitly reload daemon configuration |
| after executing the |
| changes.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--no-ask-password</option></term> |
| |
| <listitem><para>When used with |
| <command>start</command> and related |
| commands, disables asking for |
| passwords. Background services may |
| require input of a password or |
| passphrase string, for example to |
| unlock system hard disks or |
| cryptographic certificates. Unless |
| this option is specified and the |
| command is invoked from a terminal |
| <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. This also disables querying the |
| user for authentication for privileged |
| operations.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--kill-who=</option></term> |
| |
| <listitem><para>When used with |
| <command>kill</command>, choose which |
| processes to kill. Must be one of |
| <option>main</option>, |
| <option>control</option> or |
| <option>all</option> to select whether |
| to kill only the main process of the |
| unit, the control process or all |
| processes of the unit. If omitted |
| defaults to |
| <option>all</option>.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--signal=</option></term> |
| <term><option>-s</option></term> |
| |
| <listitem><para>When used with |
| <command>kill</command>, choose which |
| signal to send to selected |
| processes. Must be one of the well |
| known signal specifiers such as |
| SIGTERM, SIGINT or SIGSTOP. If |
| omitted defaults to |
| <option>SIGTERM</option>.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--force</option></term> |
| <term><option>-f</option></term> |
| |
| <listitem><para>When used with |
| <command>enable</command>, overwrite any |
| existing conflicting |
| symlinks.</para></listitem> |
| |
| <listitem><para>When used with |
| <command>halt</command>, |
| <command>poweroff</command>, |
| <command>reboot</command> or |
| <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. 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>--root=</option></term> |
| |
| <listitem><para>When used with |
| <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>--runtime</option></term> |
| |
| <listitem><para>When used with |
| <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> |
| <term><option>-H</option></term> |
| <term><option>--host</option></term> |
| |
| <listitem><para>Execute operation |
| remotely. Specify a hostname, or |
| username and hostname separated by @, |
| 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> |
| |
| <listitem><para>Acquire privileges via |
| 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>--follow</option></term> |
| <term><option>-f</option></term> |
| |
| <listitem><para>When used with |
| <command>status</command> continously |
| prints new journal entries as they are |
| appended to the |
| journal.</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> |
| |
| <variablelist> |
| <varlistentry> |
| <term><command>list-units</command></term> |
| |
| <listitem><para>List known units.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>start [NAME...]</command></term> |
| |
| <listitem><para>Start (activate) one |
| or more units specified on the command |
| line.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>stop [NAME...]</command></term> |
| |
| <listitem><para>Stop (deactivate) one |
| or more units specified on the command |
| line.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>reload [NAME...]</command></term> |
| |
| <listitem><para>Asks all units listed |
| on the command line to reload 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 |
| <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 |
| <filename>apache.service</filename> |
| systemd unit file. </para> |
| |
| <para>This command should not be |
| confused with the |
| <command>daemon-reload</command> or |
| <command>load</command> |
| commands.</para></listitem> |
| |
| </varlistentry> |
| <varlistentry> |
| <term><command>restart [NAME...]</command></term> |
| |
| <listitem><para>Restart one or more |
| units specified on the command |
| line. If the units are not running yet |
| they will be |
| started.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>try-restart [NAME...]</command></term> |
| |
| <listitem><para>Restart one or more |
| units specified on the command |
| line if the units are running. Do |
| nothing if units are not running. |
| Note that for compatibility |
| with Red Hat init scripts |
| <command>condrestart</command> is |
| equivalent to this command.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>reload-or-restart [NAME...]</command></term> |
| |
| <listitem><para>Reload one or more |
| units if they support it. If not, |
| restart them instead. If the units |
| are not running yet they will be |
| started.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>reload-or-try-restart [NAME...]</command></term> |
| |
| <listitem><para>Reload one or more |
| units if they support it. If not, |
| restart them instead. Do nothing if |
| the units are not running. Note that |
| for compatibility with SysV init |
| scripts |
| <command>force-reload</command> is |
| equivalent to this |
| command.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>isolate [NAME]</command></term> |
| |
| <listitem><para>Start the unit |
| specified on the command line and its |
| dependencies and stop all others.</para> |
| |
| <para>This is similar to changing the |
| runlevel in a traditional init system. The |
| <command>isolate</command> command will |
| immediately stop processes that are not |
| enabled in the new unit, possibly including |
| the graphical environment or terminal you |
| are currently using.</para> |
| |
| <para>Note that this works only on units |
| where <option>AllowIsolate=</option> is |
| enabled. See |
| <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry> |
| for details.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>kill [NAME...]</command></term> |
| |
| <listitem><para>Send a signal to one |
| or more processes of the unit. Use |
| <option>--kill-who=</option> to select |
| which process to kill. Use |
| <option>--kill-mode=</option> to |
| select the kill mode and |
| <option>--signal=</option> to select |
| the signal to send.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>is-active [NAME...]</command></term> |
| |
| <listitem><para>Check whether any of |
| the specified units are active |
| (i.e. running). Returns an exit code |
| 0 if at least one is active, 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, 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> |
| |
| <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 |
| properties of the unit is shown, and |
| if a job id is 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 |
| <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 human-readable |
| output.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>reset-failed [NAME...]</command></term> |
| |
| <listitem><para>Reset the |
| '<literal>failed</literal>' state of the |
| specified units, or if no unit name is |
| passed of all units. When a unit fails |
| in some way (i.e. process exiting with |
| non-zero error code, terminating |
| abnormally or timing out) it will |
| automatically enter the |
| '<literal>failed</literal>' state and |
| its exit code and status is recorded |
| for introspection by the administrator |
| until the service is restarted or |
| reset with this |
| 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 |
| 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 |
| 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> |
| |
| <para>This command will |
| print the actions executed. This |
| output may be suppressed by passing |
| <option>--quiet</option>.</para> |
| |
| <para>Note that this operation creates |
| only the suggested symlinks for the |
| units. While this command is the |
| recommended way to manipulate the unit |
| configuration directory, the |
| administrator is free to make |
| additional changes manually, by |
| placing or removing symlinks in the |
| directory. This is particularly useful |
| to create configurations that deviate |
| from the suggested default |
| installation. In this case the |
| administrator must make sure to invoke |
| <command>daemon-reload</command> |
| manually as necessary, to ensure his |
| changes are taken into account.</para> |
| |
| <para>Enabling units should not be |
| confused with starting (activating) |
| units, as done by the |
| <command>start</command> |
| command. Enabling and starting units |
| is orthogonal: units may be enabled |
| without being started and started |
| without being enabled. Enabling simply |
| hooks the unit into various suggested |
| places (for example, so that the unit |
| is automatically started on boot or |
| when a particular kind of hardware is |
| plugged in). Starting actually spawns |
| the daemon process (in case of service |
| units), or binds the socket (in 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 latter case no |
| systemd daemon configuration is |
| reloaded.</para> |
| </listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>disable [NAME...]</command></term> |
| |
| <listitem><para>Disables one or more |
| units. This removes all symlinks to |
| the specified unit files from the unit |
| configuration directory, and hence |
| undoes the changes made by |
| <command>enable</command>. Note |
| however that this removes |
| all symlinks to the unit files |
| (i.e. including manual additions), not |
| just those actually created by |
| <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 |
| is desired an additional |
| <command>stop</command> command should |
| be executed afterwards.</para> |
| |
| <para>This command will print the |
| actions executed. This output may be |
| suppressed by passing |
| <option>--quiet</option>.</para> |
| </listitem> |
| |
| <para>This command honors |
| <option>--system</option>, |
| <option>--user</option>, |
| <option>--global</option> in a similar |
| way as |
| <command>enable</command>.</para> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>is-enabled [NAME...]</command></term> |
| |
| <listitem><para>Checks whether any of |
| the specified unit files is enabled |
| (as with |
| <command>enable</command>). Returns an |
| exit code of 0 if at least one is |
| 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 a |
| preset file. This has the same effect |
| as <command>disable</command> or |
| <command>enable</command>, depending |
| how the unit is listed in the preset |
| files.</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> |
| <term><command>load [NAME...]</command></term> |
| |
| <listitem><para>Load one or more units |
| specified on the command line. This |
| will simply load their configuration |
| from disk, but not start them. To |
| start them you need to use the |
| <command>start</command> command which |
| will implicitly load a unit that has |
| not been loaded yet. Note that systemd |
| garbage collects loaded units that are |
| not active or referenced by an active |
| unit. This means that units loaded |
| this way will usually not stay loaded |
| for long. Also note that this command |
| cannot be used to reload unit |
| configuration. Use the |
| <command>daemon-reload</command> |
| command for that. All in all, this |
| command is of little use except for |
| debugging.</para> |
| <para>This command should not be |
| confused with the |
| <command>daemon-reload</command> or |
| <command>reload</command> |
| commands.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>list-jobs</command></term> |
| |
| <listitem><para>List jobs that are in progress.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>cancel [JOB...]</command></term> |
| |
| <listitem><para>Cancel one or more |
| jobs specified on the command line by |
| their numeric job |
| IDs. If no job id is specified, cancel all pending jobs.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>dump</command></term> |
| |
| <listitem><para>Dump server |
| status. This will output a (usually |
| very long) human readable manager |
| status dump. Its format is subject to |
| change without notice and should not |
| be parsed by |
| applications.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>dot</command></term> |
| |
| <listitem><para>Generate textual |
| dependency graph description in dot |
| format for further processing with the |
| GraphViz |
| <citerefentry><refentrytitle>dot</refentrytitle><manvolnum>1</manvolnum></citerefentry> |
| tool. Use a command line like |
| <command>systemctl dot | dot -Tsvg > |
| systemd.svg</command> to generate a |
| graphical dependency tree. Unless |
| <option>--order</option> or |
| <option>--require</option> is passed |
| the generated graph will show both |
| ordering and requirement |
| dependencies.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>snapshot [NAME]</command></term> |
| |
| <listitem><para>Create a snapshot. If |
| a snapshot name is specified, the new |
| snapshot will be named after it. If |
| none is specified an automatic |
| snapshot name is generated. In either |
| case, the snapshot name used is |
| printed to STDOUT, unless |
| <option>--quiet</option> is |
| specified.</para> |
| |
| <para>A snapshot refers to a saved |
| state of the systemd manager. It is |
| implemented itself as a unit that is |
| generated dynamically with this |
| command and has dependencies on all |
| units active at the time. At a later |
| time the user may return to this state |
| by using the |
| <command>isolate</command> command on |
| the snapshot unit.</para></listitem> |
| |
| <para>Snapshots are only useful for |
| saving and restoring which units are |
| running or are stopped, they do not |
| save/restore any other |
| state. Snapshots are dynamic and lost |
| on reboot.</para> |
| </varlistentry> |
| <varlistentry> |
| <term><command>delete [NAME...]</command></term> |
| |
| <listitem><para>Remove a snapshot |
| previously created with |
| <command>snapshot</command>.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>daemon-reload</command></term> |
| |
| <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 listens |
| on on behalf of user configuration will |
| stay accessible.</para> <para>This |
| command should not be confused with |
| the <command>load</command> or |
| <command>reload</command> |
| commands.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>daemon-reexec</command></term> |
| |
| <listitem><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 |
| helpful as a heavy-weight |
| <command>daemon-reload</command>. While |
| the daemon is reexecuted all sockets |
| systemd listens on on behalf of user |
| configuration will stay |
| accessible.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>show-environment</command></term> |
| |
| <listitem><para>Dump the systemd |
| manager environment block. The |
| environment block will be dumped in |
| straight-forward form suitable for |
| sourcing into a shell script. This |
| environment block will be passed to |
| all processes the manager |
| spawns.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>set-environment [NAME=VALUE...]</command></term> |
| |
| <listitem><para>Set one or more |
| systemd manager environment variables, |
| as specified on the command |
| line.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>unset-environment [NAME...]</command></term> |
| |
| <listitem><para>Unset one or more |
| systemd manager environment |
| variables. If only a variable name is |
| specified it will be removed |
| regardless of its value. If a variable |
| and a value are specified the variable |
| is only removed if it has the |
| specified value.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>default</command></term> |
| |
| <listitem><para>Enter default |
| mode. This is mostly equivalent to |
| <command>start |
| default.target</command>.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>rescue</command></term> |
| |
| <listitem><para>Enter rescue |
| mode. This is mostly equivalent to |
| <command>isolate |
| rescue.target</command> but also |
| prints a wall message to all |
| users.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>emergency</command></term> |
| |
| <listitem><para>Enter emergency |
| mode. This is mostly equivalent to |
| <command>isolate |
| emergency.target</command> but also |
| prints a wall message to all |
| users.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>halt</command></term> |
| |
| <listitem><para>Shut down and halt the |
| 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 |
| mounted read-only, immediately |
| followed by the system halt. If |
| <option>--force</option> is specified |
| twice the 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> |
| |
| <listitem><para>Shut down and |
| power-off the system. This is mostly |
| equivalent to <command>start |
| poweroff.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 mounted read-only, |
| immediately followed by the powering |
| off. If <option>--force</option> is |
| specified twice the 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 |
| reboot.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 mounted read-only, |
| immediately followed by the reboot. If |
| <option>--force</option> is specified |
| twice the 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> |
| |
| <listitem><para>Shut down and reboot |
| the system via kexec. This is mostly |
| equivalent to <command>start |
| kexec.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 |
| mounted read-only, immediately |
| followed by the |
| reboot.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>exit</command></term> |
| |
| <listitem><para>Ask the systemd |
| manager to quit. This is only |
| supported for user service managers |
| (i.e. in conjunction with the |
| <option>--user</option> option) and |
| will fail otherwise.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>suspend</command></term> |
| |
| <listitem><para>Suspend the system.</para></listitem> |
| </varlistentry> |
| <varlistentry> |
| <term><command>hibernate</command></term> |
| |
| <listitem><para>Hibernate the system.</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 |
| ommitted or the empty string, a |
| systemd binary will automatically be |
| searched for and used as init. If the |
| system manager path is ommitted 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> |
| |
| <refsect1> |
| <title>Exit status</title> |
| |
| <para>On success 0 is returned, a non-zero failure |
| code otherwise.</para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Environment</title> |
| |
| <variablelist> |
| <varlistentry> |
| <term><varname>$SYSTEMD_PAGER</varname></term> |
| <listitem><para>Pager to use when |
| <option>--no-pager</option> is not given; |
| overrides <varname>$PAGER</varname>. Setting |
| this to an empty string or the value |
| <literal>cat</literal> is equivalent to passing |
| <option>--no-pager</option>.</para></listitem> |
| </varlistentry> |
| </variablelist> |
| </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>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, |
| <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>, |
| <citerefentry><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry> |
| </para> |
| </refsect1> |
| |
| </refentry> |