-t t[,t …
list of unit types such as service and socket.|
Available unit types:
service, socket, busname, target, device, mount, automount, swap, timer, path, slice, scope
limit display to certain unit types.
help a list of allowed values will be printed and the program will exit.
unit LOAD, SUB, or ACTIVE states. When listing units, show only
those in the specified states. Use --state=failed to show only failed units.
unit load states:
stub, loaded, not-found, error, merged, masked
unit active states:
active, reloading, inactive, failed, activating, deactivating
- automount : dead, waiting, running, failed
- busname : dead, making, registered, listening, running, sigterm, sigkill, failed
- device : dead, tentative, plugged
- mount :
dead, mounting, mounting-done, mounted, remounting, unmounting, mounting-sigterm, mounting-sigkill, remounting-sigterm,
remounting-sigkill, unmounting-sigterm, unmounting-sigkill, failed
- path : dead, waiting, running, failed,
- scope : dead, running, abandoned, stop-sigterm, stop-sigkill, failed
- service : dead, start-pre, start, start-post, running, exited, reload, stop,
stop-sigabrt, stop-sigterm, stop-sigkill, stop-post, final-sigterm, final-sigkill, failed, auto-restart
- slice : dead, active
- socket :
dead, start-pre, start-chown, start-post, listening, running, stop-pre, stop-pre-sigterm, stop-pre-sigkill, stop-post,
final-sigterm, final-sigkill, failed
- swap :
dead, activating, activating-done, active, deactivating, activating-sigterm, activating-sigkill, deactivating-sigterm,
- target : dead, active
- timer : dead, waiting, running, elapsed, failed
help, a list of allowed values will be printed and the program will exit.
-p p[,p …
--property= p[,p …
When showing unit/job/manager properties with |
show , limit display to properties specified
. such as "MainPID". .
Shell completion is implemented for property names.
For the manager itself, systemctl show will show all available properties. See
Properties for units vary by unit type, so showing any unit (even a non-existent one) is a way to list properties
pertaining to this type.
showing any job will list properties pertaining to all jobs.
Properties for units are documented in
systemd.unit(5), and the pages for individual unit types systemd.service(5), systemd.socket(5),
When listing units with list-units, also show inactive units and units which are following other units. When showing
unit/job/manager properties, show all properties regardless whether they are set or not.|
To list all units installed in the file system, use the list-unit-files command instead.
When listing units with list-dependencies, recursively show dependencies of all dependent units (by default only
dependencies of target units are shown).
When listing units, also show units of local containers. Units of local containers will be prefixed with the
container name, separated by a single colon character (":").
Show reverse dependencies between units with list-dependencies, i.e. follow dependencies of type WantedBy=,
RequiredBy=, PartOf=, BoundBy=, instead of Wants= and similar.
With list-dependencies, show the units that are ordered before the specified unit. In other words, recursively list
units following the After= dependency.
Note that any After= dependency is automatically mirrored to create a Before= dependency. Temporal dependencies may
be specified explicitly, but are also created implicitly for units which are WantedBy= targets (see
systemd.target(5)), and as a result of other directives (for example RequiresMountsFor=). Both explicitly and
implicitly introduced dependencies are shown with list-dependencies.
With list-dependencies, show the units that are ordered after the specified unit. In other words, recursively list
units following the Before= dependency.
Do not ellipsize unit names, process tree entries, journal output, or truncate unit descriptions in the output of
status, list-units, list-jobs, and list-timers.
Also, show installation targets in the output of is-enabled.
When printing properties with show, only print the value, and skip the property name and "=".
When showing sockets, show the type of the socket.
When queuing a new job, controls how to deal with already queued jobs. |
fail, replace, replace-irreversibly,isolate, ignore-dependencies, ignore-requirements or flush.
replace except when the isolate command is used which implies the "isolate" job mode.
fail if 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.
replace (default) any conflicting pending job will be replaced, as necessary.
replace-irreversibly like "replace", but also mark the new jobs as irreversible. This
prevents future conflicting transactions from replacing these jobs (or even being enqueued while the irreversible
jobs are still pending). Irreversible jobs can still be cancelled using the cancel command.
isolate 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 isolate command is used.
flush will cause all queued jobs to be canceled when the new job is enqueued.
ignore-dependencies 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
ignore-requirements is similar to "ignore-dependencies", but only causes the requirement dependencies to be
ignored, the ordering dependencies will still be honored.
When used with the kill command, if no units were killed, the operation results in an error.
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 of whether privileged or not) and a list of
active locks is output.
--ignore-inhibitors is specified, the locks are ignored and not output, and the
operation attempted anyway, possibly requiring additional privileges.
Suppress output of the results of various commands and also the hints about truncated log lines. |
suppress output of commands for which the printed output is the only result (like
Errors are always printed.
Do not synchronously wait for the requested operation to finish. |
If this is not specified, the job will be verified, enqueued and systemctl will wait until the unit's start-up is completed.
By passing this argument, it is only verified and enqueued.
May not be combined with
Synchronously wait for started units to terminate again. may not be combined with |
this will wait indefinitly if any given unit never terminates (by itself or by getting stopped explicitly); particularly
services which use .
| Talk to the service manager of the calling user, rather than the service manager of the system.
| Talk to the service manager of the system. This is the implied default.
| Do not send wall message before halt, power-off, reboot.
When used with enable and disable, operate on the global user configuration directory, thus enabling or disabling a
unit file globally for all future logins of all users.
When used with enable and disable, do not implicitly reload daemon configuration after executing the changes.
When used with start 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, systemctl 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.
When used with kill, choose which processes to send a signal to. Must be one of main, control or all to select
whether to kill only the main process, the control process or all processes of the unit. The main process of the unit
is the one that defines the life-time of it. A control process of a unit is one that is invoked by the manager to
induce state changes of it. For example, all processes started due to the ExecStartPre=, ExecStop= or ExecReload=
settings of service units are control processes. Note that there is only one control process per unit at a time, as
only one state change is executed at a time. For services of type Type=forking, the initial process started by the
manager for ExecStart= is a control process, while the process ultimately forked off by that one is then considered
the main process of the unit (if it can be determined). This is different for service units of other types, where the
process forked off by the manager for ExecStart= is always the main process itself. A service unit consists of zero
or one main process, zero or one control process plus any number of additional processes. Not all unit types manage
processes of these types however. For example, for mount units, control processes are defined (which are the
invocations of /bin/mount and /bin/umount), but no main process is defined. If omitted, defaults to all.
When used with kill, 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 SIGTERM.
When used with enable, overwrite any existing conflicting symlinks.
When used with edit, create all of the specified units which do not already exist.
When used with halt, poweroff, reboot or kexec, 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 --force is specified twice for these
operations (with the exception of kexec), they will be executed immediately, without terminating any processes or
unmounting any file systems. Warning: specifying --force twice with any of these operations might result in data
loss. Note that when --force is specified twice the selected operation is executed by systemctl itself, and the
system manager is not contacted. This means the command should succeed even when the system manager hangs or crashed.
When used with halt, poweroff, reboot or kexec, set a short message explaining the reason for the operation. The
message will be logged together with the default shutdown message.
When used with enable, the units will also be started. When used with disable or mask, the units will also be
stopped. The start or stop operation is only carried out when the respective enable or disable operation has been
When used with enable/disable/is-enabled (and related commands), use the specified root path when looking for unit
files. If this option is present, systemctl will operate on the file system directly, instead of communicating with
the systemd daemon to carry out changes.
When used with enable, disable, edit, (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 /etc but in /run, with
identical immediate effects, however, since the latter is lost on reboot, the changes are lost too.
Similarly, when used with set-property, make changes only temporarily, so that they are lost on the next reboot.
Takes one of "full" (the default), "enable-only", "disable-only". When used with the preset or preset-all commands,
controls whether units shall be disabled and enabled according to the preset rules, or only enabled, or only
When used with status, controls the number of journal lines to show, counting from the most recent ones. Takes a
positive integer argument. Defaults to 10.
When used with status, controls the formatting of the journal entries that are shown. For the available choices, see
journalctl(1). Defaults to "short".
When used with the reboot command, indicate to the system's firmware to boot into setup mode. Note that this is
currently only supported on some EFI systems and only if the system was booted in EFI mode.
When used with list-dependencies, list-units or list-machines, the output is printed as a list instead of a tree, and
the bullet circles are omitted.
Execute the operation remotely. Specify a hostname, or a username and hostname separated by "@", to connect to. The
hostname may optionally be suffixed by a container name, separated by ":", which connects directly to a specific
container on the specified host. This will use SSH to talk to the remote machine manager instance. Container names
may be enumerated with machinectl -H HOST.
Execute operation on a local container. Specify a container name to connect to.
Do not pipe output into a pager.
Do not print the legend, i.e. column headers and the footer with hints.
Print a short help text and exit.
Print a short version string and exit.