1SYSTEMCTL(1)                       systemctl                      SYSTEMCTL(1)
2
3
4

NAME

6       systemctl - Control the systemd system and service manager
7

SYNOPSIS

9       systemctl [OPTIONS...] COMMAND [UNIT...]
10

DESCRIPTION

12       systemctl may be used to introspect and control the state of the
13       "systemd" system and service manager. Please refer to systemd(1) for an
14       introduction into the basic concepts and functionality this tool
15       manages.
16

COMMANDS

18       The following commands are understood:
19
20   Unit Commands (Introspection and Modification)
21       list-units [PATTERN...]
22           List units that systemd currently has in memory. This includes
23           units that are either referenced directly or through a dependency,
24           units that are pinned by applications programmatically, or units
25           that were active in the past and have failed. By default only units
26           which are active, have pending jobs, or have failed are shown; this
27           can be changed with option --all. If one or more PATTERNs are
28           specified, only units matching one of them are shown. The units
29           that are shown are additionally filtered by --type= and --state= if
30           those options are specified.
31
32           Note that this command does not show unit templates, but only
33           instances of unit templates. Units templates that aren't
34           instantiated are not runnable, and will thus never show up in the
35           output of this command. Specifically this means that foo@.service
36           will never be shown in this list — unless instantiated, e.g. as
37           foo@bar.service. Use list-unit-files (see below) for listing
38           installed unit template files.
39
40           Produces output similar to
41
42                 UNIT                         LOAD   ACTIVE SUB     DESCRIPTION
43                 sys-module-fuse.device       loaded active plugged /sys/module/fuse
44                 -.mount                      loaded active mounted Root Mount
45                 boot-efi.mount               loaded active mounted /boot/efi
46                 systemd-journald.service     loaded active running Journal Service
47                 systemd-logind.service       loaded active running Login Service
48               ● user@1000.service            loaded failed failed  User Manager for UID 1000
49                 ...
50                 systemd-tmpfiles-clean.timer loaded active waiting Daily Cleanup of Temporary Directories
51
52               LOAD   = Reflects whether the unit definition was properly loaded.
53               ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
54               SUB    = The low-level unit activation state, values depend on unit type.
55
56               123 loaded units listed. Pass --all to see loaded but inactive units, too.
57               To show all installed unit files use 'systemctl list-unit-files'.
58
59           The header and the last unit of a given type are underlined if the
60           terminal supports that. A colored dot is shown next to services
61           which were masked, not found, or otherwise failed.
62
63           The LOAD column shows the load state, one of loaded, not-found,
64           bad-setting, error, masked. The ACTIVE columns shows the general
65           unit state, one of active, reloading, inactive, failed, activating,
66           deactivating. The SUB column shows the unit-type-specific detailed
67           state of the unit, possible values vary by unit type. The list of
68           possible LOAD, ACTIVE, and SUB states is not constant and new
69           systemd releases may both add and remove values.
70
71               systemctl --state=help
72
73           command maybe be used to display the current set of possible
74           values.
75
76           This is the default command.
77
78       list-sockets [PATTERN...]
79           List socket units currently in memory, ordered by listening
80           address. If one or more PATTERNs are specified, only socket units
81           matching one of them are shown. Produces output similar to
82
83               LISTEN           UNIT                        ACTIVATES
84               /dev/initctl     systemd-initctl.socket      systemd-initctl.service
85               ...
86               [::]:22          sshd.socket                 sshd.service
87               kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
88
89               5 sockets listed.
90
91           Note: because the addresses might contains spaces, this output is
92           not suitable for programmatic consumption.
93
94           Also see --show-types, --all, and --state=.
95
96       list-timers [PATTERN...]
97           List timer units currently in memory, ordered by the time they
98           elapse next. If one or more PATTERNs are specified, only units
99           matching one of them are shown. Produces output similar to
100
101               NEXT                         LEFT          LAST                         PASSED     UNIT                         ACTIVATES
102               n/a                          n/a           Thu 2017-02-23 13:40:29 EST  3 days ago ureadahead-stop.timer        ureadahead-stop.service
103               Sun 2017-02-26 18:55:42 EST  1min 14s left Thu 2017-02-23 13:54:44 EST  3 days ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service
104               Sun 2017-02-26 20:37:16 EST  1h 42min left Sun 2017-02-26 11:56:36 EST  6h ago     apt-daily.timer              apt-daily.service
105               Sun 2017-02-26 20:57:49 EST  2h 3min left  Sun 2017-02-26 11:56:36 EST  6h ago     snapd.refresh.timer          snapd.refresh.service
106
107
108           NEXT shows the next time the timer will run.
109
110           LEFT shows how long till the next time the timer runs.
111
112           LAST shows the last time the timer ran.
113
114           PASSED shows how long has passed since the timer last ran.
115
116           UNIT shows the name of the timer
117
118           ACTIVATES shows the name the service the timer activates when it
119           runs.
120
121           Also see --all and --state=.
122
123       is-active PATTERN...
124           Check whether any of the specified units are active (i.e. running).
125           Returns an exit code 0 if at least one is active, or non-zero
126           otherwise. Unless --quiet is specified, this will also print the
127           current unit state to standard output.
128
129       is-failed PATTERN...
130           Check whether any of the specified units are in a "failed" state.
131           Returns an exit code 0 if at least one has failed, non-zero
132           otherwise. Unless --quiet is specified, this will also print the
133           current unit state to standard output.
134
135       status [PATTERN...|PID...]]
136           Show terse runtime status information about one or more units,
137           followed by most recent log data from the journal. If no units are
138           specified, show system status. If combined with --all, also show
139           the status of all units (subject to limitations specified with -t).
140           If a PID is passed, show information about the unit the process
141           belongs to.
142
143           This function is intended to generate human-readable output. If you
144           are looking for computer-parsable output, use show instead. By
145           default, this function only shows 10 lines of output and ellipsizes
146           lines to fit in the terminal window. This can be changed with
147           --lines and --full, see above. In addition, journalctl --unit=NAME
148           or journalctl --user-unit=NAME use a similar filter for messages
149           and might be more convenient.
150
151           systemd implicitly loads units as necessary, so just running the
152           status will attempt to load a file. The command is thus not useful
153           for determining if something was already loaded or not. The units
154           may possibly also be quickly unloaded after the operation is
155           completed if there's no reason to keep it in memory thereafter.
156
157           Example 1. Example output from systemctl status
158
159               $ systemctl status bluetooth
160               ● bluetooth.service - Bluetooth service
161                  Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
162                  Active: active (running) since Wed 2017-01-04 13:54:04 EST; 1 weeks 0 days ago
163                    Docs: man:bluetoothd(8)
164                Main PID: 930 (bluetoothd)
165                  Status: "Running"
166                   Tasks: 1
167                  Memory: 648.0K
168                     CPU: 435ms
169                  CGroup: /system.slice/bluetooth.service
170                          └─930 /usr/lib/bluetooth/bluetoothd
171
172               Jan 12 10:46:45 example.com bluetoothd[8900]: Not enough free handles to register service
173               Jan 12 10:46:45 example.com bluetoothd[8900]: Current Time Service could not be registered
174               Jan 12 10:46:45 example.com bluetoothd[8900]: gatt-time-server: Input/output error (5)
175
176           The dot ("●") uses color on supported terminals to summarize the
177           unit state at a glance. Along with its color, its shape varies
178           according to its state: "inactive" or "maintenance" is a white
179           circle ("○"), "active" is a green dot ("●"), "deactivating" is a
180           white dot, "failed" or "error" is a red cross ("×"), and
181           "reloading" is a green clockwise circle arrow ("↻").
182
183           The "Loaded:" line in the output will show "loaded" if the unit has
184           been loaded into memory. Other possible values for "Loaded:"
185           include: "error" if there was a problem loading it, "not-found" if
186           no unit file was found for this unit, "bad-setting" if an essential
187           unit file setting could not be parsed and "masked" if the unit file
188           has been masked. Along with showing the path to the unit file, this
189           line will also show the enablement state. Enabled units are
190           included in the dependency network between units, and thus are
191           started at boot or via some other form of activation. See the full
192           table of possible enablement states — including the definition of
193           "masked" — in the documentation for the is-enabled command.
194
195           The "Active:" line shows active state. The value is usually
196           "active" or "inactive". Active could mean started, bound, plugged
197           in, etc depending on the unit type. The unit could also be in
198           process of changing states, reporting a state of "activating" or
199           "deactivating". A special "failed" state is entered when the
200           service failed in some way, such as a crash, exiting with an error
201           code or timing out. If the failed state is entered the cause will
202           be logged for later reference.
203
204       show [PATTERN...|JOB...]
205           Show properties of one or more units, jobs, or the manager itself.
206           If no argument is specified, properties of the manager will be
207           shown. If a unit name is specified, properties of the unit are
208           shown, and if a job ID is specified, properties of the job are
209           shown. By default, empty properties are suppressed. Use --all to
210           show those too. To select specific properties to show, use
211           --property=. This command is intended to be used whenever
212           computer-parsable output is required. Use status if you are looking
213           for formatted human-readable output.
214
215           Many properties shown by systemctl show map directly to
216           configuration settings of the system and service manager and its
217           unit files. Note that the properties shown by the command are
218           generally more low-level, normalized versions of the original
219           configuration settings and expose runtime state in addition to
220           configuration. For example, properties shown for service units
221           include the service's current main process identifier as "MainPID"
222           (which is runtime state), and time settings are always exposed as
223           properties ending in the "...USec" suffix even if a matching
224           configuration options end in "...Sec", because microseconds is the
225           normalized time unit used internally by the system and service
226           manager.
227
228           For details about many of these properties, see the documentation
229           of the D-Bus interface backing these properties, see
230           org.freedesktop.systemd1(5).
231
232       cat PATTERN...
233           Show backing files of one or more units. Prints the "fragment" and
234           "drop-ins" (source files) of units. Each file is preceded by a
235           comment which includes the file name. Note that this shows the
236           contents of the backing files on disk, which may not match the
237           system manager's understanding of these units if any unit files
238           were updated on disk and the daemon-reload command wasn't issued
239           since.
240
241       help PATTERN...|PID...
242           Show manual pages for one or more units, if available. If a PID is
243           given, the manual pages for the unit the process belongs to are
244           shown.
245
246       list-dependencies [UNIT...]
247           Shows units required and wanted by the specified units. This
248           recursively lists units following the Requires=, Requisite=,
249           ConsistsOf=, Wants=, BindsTo= dependencies. If no units are
250           specified, default.target is implied.
251
252           By default, only target units are recursively expanded. When --all
253           is passed, all other units are recursively expanded as well.
254
255           Options --reverse, --after, --before may be used to change what
256           types of dependencies are shown.
257
258           Note that this command only lists units currently loaded into
259           memory by the service manager. In particular, this command is not
260           suitable to get a comprehensive list at all reverse dependencies on
261           a specific unit, as it won't list the dependencies declared by
262           units currently not loaded.
263
264       start PATTERN...
265           Start (activate) one or more units specified on the command line.
266
267           Note that unit glob patterns expand to names of units currently in
268           memory. Units which are not active and are not in a failed state
269           usually are not in memory, and will not be matched by any pattern.
270           In addition, in case of instantiated units, systemd is often
271           unaware of the instance name until the instance has been started.
272           Therefore, using glob patterns with start has limited usefulness.
273           Also, secondary alias names of units are not considered.
274
275           Option --all may be used to also operate on inactive units which
276           are referenced by other loaded units. Note that this is not the
277           same as operating on "all" possible units, because as the previous
278           paragraph describes, such a list is ill-defined. Nevertheless,
279           systemctl start --all GLOB may be useful if all the units that
280           should match the pattern are pulled in by some target which is
281           known to be loaded.
282
283       stop PATTERN...
284           Stop (deactivate) one or more units specified on the command line.
285
286           This command will fail if the unit does not exist or if stopping of
287           the unit is prohibited (see RefuseManualStop= in systemd.unit(5)).
288           It will not fail if any of the commands configured to stop the unit
289           (ExecStop=, etc.) fail, because the manager will still forcibly
290           terminate the unit.
291
292       reload PATTERN...
293           Asks all units listed on the command line to reload their
294           configuration. Note that this will reload the service-specific
295           configuration, not the unit configuration file of systemd. If you
296           want systemd to reload the configuration file of a unit, use the
297           daemon-reload command. In other words: for the example case of
298           Apache, this will reload Apache's httpd.conf in the web server, not
299           the apache.service systemd unit file.
300
301           This command should not be confused with the daemon-reload command.
302
303       restart PATTERN...
304           Stop and then start one or more units specified on the command
305           line. If the units are not running yet, they will be started.
306
307           Note that restarting a unit with this command does not necessarily
308           flush out all of the unit's resources before it is started again.
309           For example, the per-service file descriptor storage facility (see
310           FileDescriptorStoreMax= in systemd.service(5)) will remain intact
311           as long as the unit has a job pending, and is only cleared when the
312           unit is fully stopped and no jobs are pending anymore. If it is
313           intended that the file descriptor store is flushed out, too, during
314           a restart operation an explicit systemctl stop command followed by
315           systemctl start should be issued.
316
317       try-restart PATTERN...
318           Stop and then start one or more units specified on the command line
319           if the units are running. This does nothing if units are not
320           running.
321
322       reload-or-restart PATTERN...
323           Reload one or more units if they support it. If not, stop and then
324           start them instead. If the units are not running yet, they will be
325           started.
326
327       try-reload-or-restart PATTERN...
328           Reload one or more units if they support it. If not, stop and then
329           start them instead. This does nothing if the units are not running.
330
331       isolate UNIT
332           Start the unit specified on the command line and its dependencies
333           and stop all others, unless they have IgnoreOnIsolate=yes (see
334           systemd.unit(5)). If a unit name with no extension is given, an
335           extension of ".target" will be assumed.
336
337           This command is dangerous, since it will immediately stop processes
338           that are not enabled in the new target, possibly including the
339           graphical environment or terminal you are currently using.
340
341           Note that this is allowed only on units where AllowIsolate= is
342           enabled. See systemd.unit(5) for details.
343
344       kill PATTERN...
345           Send a signal to one or more processes of the unit. Use --kill-who=
346           to select which process to kill. Use --signal= to select the signal
347           to send.
348
349       clean PATTERN...
350           Remove the configuration, state, cache, logs or runtime data of the
351           specified units. Use --what= to select which kind of resource to
352           remove. For service units this may be used to remove the
353           directories configured with ConfigurationDirectory=,
354           StateDirectory=, CacheDirectory=, LogsDirectory= and
355           RuntimeDirectory=, see systemd.exec(5) for details. For timer units
356           this may be used to clear out the persistent timestamp data if
357           Persistent= is used and --what=state is selected, see
358           systemd.timer(5). This command only applies to units that use
359           either of these settings. If --what= is not specified, both the
360           cache and runtime data are removed (as these two types of data are
361           generally redundant and reproducible on the next invocation of the
362           unit).
363
364       freeze PATTERN...
365           Freeze one or more units specified on the command line using cgroup
366           freezer
367
368           Freezing the unit will cause all processes contained within the
369           cgroup corresponding to the unit to be suspended. Being suspended
370           means that unit's processes won't be scheduled to run on CPU until
371           thawed. Note that this command is supported only on systems that
372           use unified cgroup hierarchy. Unit is automatically thawed just
373           before we execute a job against the unit, e.g. before the unit is
374           stopped.
375
376       thaw PATTERN...
377           Thaw (unfreeze) one or more units specified on the command line.
378
379           This is the inverse operation to the freeze command and resumes the
380           execution of processes in the unit's cgroup.
381
382       set-property UNIT PROPERTY=VALUE...
383           Set the specified unit properties at runtime where this is
384           supported. This allows changing configuration parameter properties
385           such as resource control settings at runtime. Not all properties
386           may be changed at runtime, but many resource control settings
387           (primarily those in systemd.resource-control(5)) may. The changes
388           are applied immediately, and stored on disk for future boots,
389           unless --runtime is passed, in which case the settings only apply
390           until the next reboot. The syntax of the property assignment
391           follows closely the syntax of assignments in unit files.
392
393           Example: systemctl set-property foobar.service CPUWeight=200
394
395           If the specified unit appears to be inactive, the changes will be
396           only stored on disk as described previously hence they will be
397           effective when the unit will be started.
398
399           Note that this command allows changing multiple properties at the
400           same time, which is preferable over setting them individually.
401
402           Example: systemctl set-property foobar.service CPUWeight=200
403           MemoryMax=2G IPAccounting=yes
404
405           Like with unit file configuration settings, assigning an empty
406           setting usually resets a property to its defaults.
407
408           Example: systemctl set-property avahi-daemon.service IPAddressDeny=
409
410       bind UNIT PATH [PATH]
411           Bind-mounts a file or directory from the host into the specified
412           unit's mount namespace. The first path argument is the source file
413           or directory on the host, the second path argument is the
414           destination file or directory in the unit's mount namespace. When
415           the latter is omitted, the destination path in the unit's mount
416           namespace is the same as the source path on the host. When combined
417           with the --read-only switch, a ready-only bind mount is created.
418           When combined with the --mkdir switch, the destination path is
419           first created before the mount is applied.
420
421           Note that this option is currently only supported for units that
422           run within a mount namespace (e.g.: with RootImage=,
423           PrivateMounts=, etc.). This command supports bind-mounting
424           directories, regular files, device nodes, AF_UNIX socket nodes, as
425           well as FIFOs. The bind mount is ephemeral, and it is undone as
426           soon as the current unit process exists. Note that the namespace
427           mentioned here, where the bind mount will be added to, is the one
428           where the main service process runs. Other processes (those
429           exececuted by ExecReload=, ExecStartPre=, etc.) run in distinct
430           namespaces.
431
432       mount-image UNIT IMAGE [PATH [PARTITION_NAME:MOUNT_OPTIONS]]
433           Mounts an image from the host into the specified unit's mount
434           namespace. The first path argument is the source image on the host,
435           the second path argument is the destination directory in the unit's
436           mount namespace (i.e. inside RootImage=/RootDirectory=). The
437           following argument, if any, is interpreted as a colon-separated
438           tuple of partition name and comma-separated list of mount options
439           for that partition. The format is the same as the service
440           MountImages= setting. When combined with the --read-only switch, a
441           ready-only mount is created. When combined with the --mkdir switch,
442           the destination path is first created before the mount is applied.
443
444           Note that this option is currently only supported for units that
445           run within a mount namespace (i.e. with RootImage=, PrivateMounts=,
446           etc.). Note that the namespace mentioned here where the image mount
447           will be added to, is the one where the main service process runs.
448           Note that the namespace mentioned here, where the bind mount will
449           be added to, is the one where the main service process runs. Other
450           processes (those exececuted by ExecReload=, ExecStartPre=, etc.)
451           run in distinct namespaces.
452
453           Example:
454
455               systemctl mount-image foo.service /tmp/img.raw /var/lib/image root:ro,nosuid
456
457
458
459               systemctl mount-image --mkdir bar.service /tmp/img.raw /var/lib/baz/img
460
461
462       service-log-level SERVICE [LEVEL]
463           If the LEVEL argument is not given, print the current log level as
464           reported by service SERVICE.
465
466           If the optional argument LEVEL is provided, then change the current
467           log level of the service to LEVEL. The log level should be a
468           typical syslog log level, i.e. a value in the range 0...7 or one of
469           the strings emerg, alert, crit, err, warning, notice, info, debug;
470           see syslog(3) for details.
471
472           The service must have the appropriate BusName=destination property
473           and also implement the generic org.freedesktop.LogControl1(5)
474           interface. (systemctl will use the generic D-Bus protocol to access
475           the org.freedesktop.LogControl1.LogLevel interface for the D-Bus
476           name destination.)
477
478       service-log-target SERVICE [TARGET]
479           If the TARGET argument is not given, print the current log target
480           as reported by service SERVICE.
481
482           If the optional argument TARGET is provided, then change the
483           current log target of the service to TARGET. The log target should
484           be one of the strings console (for log output to the service's
485           standard error stream), kmsg (for log output to the kernel log
486           buffer), journal (for log output to systemd-journald.service(8)
487           using the native journal protocol), syslog (for log output to the
488           classic syslog socket /dev/log), null (for no log output
489           whatsoever) or auto (for an automatically determined choice,
490           typically equivalent to console if the service is invoked
491           interactively, and journal or syslog otherwise).
492
493           For most services, only a small subset of log targets make sense.
494           In particular, most "normal" services should only implement
495           console, journal, and null. Anything else is only appropriate for
496           low-level services that are active in very early boot before proper
497           logging is established.
498
499           The service must have the appropriate BusName=destination property
500           and also implement the generic org.freedesktop.LogControl1(5)
501           interface. (systemctl will use the generic D-Bus protocol to access
502           the org.freedesktop.LogControl1.LogLevel interface for the D-Bus
503           name destination.)
504
505       reset-failed [PATTERN...]
506           Reset the "failed" state of the specified units, or if no unit name
507           is passed, reset the state of all units. When a unit fails in some
508           way (i.e. process exiting with non-zero error code, terminating
509           abnormally or timing out), it will automatically enter the "failed"
510           state and its exit code and status is recorded for introspection by
511           the administrator until the service is stopped/re-started or reset
512           with this command.
513
514           In addition to resetting the "failed" state of a unit it also
515           resets various other per-unit properties: the start rate limit
516           counter of all unit types is reset to zero, as is the restart
517           counter of service units. Thus, if a unit's start limit (as
518           configured with StartLimitIntervalSec=/StartLimitBurst=) is hit and
519           the unit refuses to be started again, use this command to make it
520           startable again.
521
522   Unit File Commands
523       list-unit-files [PATTERN...]
524           List unit files installed on the system, in combination with their
525           enablement state (as reported by is-enabled). If one or more
526           PATTERNs are specified, only unit files whose name matches one of
527           them are shown (patterns matching unit file system paths are not
528           supported).
529
530           Unlike list-units this command will list template units in addition
531           to explicitly instantiated units.
532
533       enable UNIT..., enable PATH...
534           Enable one or more units or unit instances. This will create a set
535           of symlinks, as encoded in the [Install] sections of the indicated
536           unit files. After the symlinks have been created, the system
537           manager configuration is reloaded (in a way equivalent to
538           daemon-reload), in order to ensure the changes are taken into
539           account immediately. Note that this does not have the effect of
540           also starting any of the units being enabled. If this is desired,
541           combine this command with the --now switch, or invoke start with
542           appropriate arguments later. Note that in case of unit instance
543           enablement (i.e. enablement of units of the form foo@bar.service),
544           symlinks named the same as instances are created in the unit
545           configuration directory, however they point to the single template
546           unit file they are instantiated from.
547
548           This command expects either valid unit names (in which case various
549           unit file directories are automatically searched for unit files
550           with appropriate names), or absolute paths to unit files (in which
551           case these files are read directly). If a specified unit file is
552           located outside of the usual unit file directories, an additional
553           symlink is created, linking it into the unit configuration path,
554           thus ensuring it is found when requested by commands such as start.
555           The file system where the linked unit files are located must be
556           accessible when systemd is started (e.g. anything underneath /home/
557           or /var/ is not allowed, unless those directories are located on
558           the root file system).
559
560           This command will print the file system operations executed. This
561           output may be suppressed by passing --quiet.
562
563           Note that this operation creates only the symlinks suggested in the
564           [Install] section of the unit files. While this command is the
565           recommended way to manipulate the unit configuration directory, the
566           administrator is free to make additional changes manually by
567           placing or removing symlinks below this directory. This is
568           particularly useful to create configurations that deviate from the
569           suggested default installation. In this case, the administrator
570           must make sure to invoke daemon-reload manually as necessary, in
571           order to ensure the changes are taken into account.
572
573           Enabling units should not be confused with starting (activating)
574           units, as done by the start command. Enabling and starting units is
575           orthogonal: units may be enabled without being started and started
576           without being enabled. Enabling simply hooks the unit into various
577           suggested places (for example, so that the unit is automatically
578           started on boot or when a particular kind of hardware is plugged
579           in). Starting actually spawns the daemon process (in case of
580           service units), or binds the socket (in case of socket units), and
581           so on.
582
583           Depending on whether --system, --user, --runtime, or --global is
584           specified, this enables the unit for the system, for the calling
585           user only, for only this boot of the system, or for all future
586           logins of all users. Note that in the last case, no systemd daemon
587           configuration is reloaded.
588
589           Using enable on masked units is not supported and results in an
590           error.
591
592       disable UNIT...
593           Disables one or more units. This removes all symlinks to the unit
594           files backing the specified units from the unit configuration
595           directory, and hence undoes any changes made by enable or link.
596           Note that this removes all symlinks to matching unit files,
597           including manually created symlinks, and not just those actually
598           created by enable or link. Note that while disable undoes the
599           effect of enable, the two commands are otherwise not symmetric, as
600           disable may remove more symlinks than a prior enable invocation of
601           the same unit created.
602
603           This command expects valid unit names only, it does not accept
604           paths to unit files.
605
606           In addition to the units specified as arguments, all units are
607           disabled that are listed in the Also= setting contained in the
608           [Install] section of any of the unit files being operated on.
609
610           This command implicitly reloads the system manager configuration
611           after completing the operation. Note that this command does not
612           implicitly stop the units that are being disabled. If this is
613           desired, either combine this command with the --now switch, or
614           invoke the stop command with appropriate arguments later.
615
616           This command will print information about the file system
617           operations (symlink removals) executed. This output may be
618           suppressed by passing --quiet.
619
620           This command honors --system, --user, --runtime and --global in a
621           similar way as enable.
622
623       reenable UNIT...
624           Reenable one or more units, as specified on the command line. This
625           is a combination of disable and enable and is useful to reset the
626           symlinks a unit file is enabled with to the defaults configured in
627           its [Install] section. This command expects a unit name only, it
628           does not accept paths to unit files.
629
630       preset UNIT...
631           Reset the enable/disable status one or more unit files, as
632           specified on the command line, to the defaults configured in the
633           preset policy files. This has the same effect as disable or enable,
634           depending how the unit is listed in the preset files.
635
636           Use --preset-mode= to control whether units shall be enabled and
637           disabled, or only enabled, or only disabled.
638
639           If the unit carries no install information, it will be silently
640           ignored by this command.  UNIT must be the real unit name, any
641           alias names are ignored silently.
642
643           For more information on the preset policy format, see
644           systemd.preset(5).
645
646       preset-all
647           Resets all installed unit files to the defaults configured in the
648           preset policy file (see above).
649
650           Use --preset-mode= to control whether units shall be enabled and
651           disabled, or only enabled, or only disabled.
652
653       is-enabled UNIT...
654           Checks whether any of the specified unit files are enabled (as with
655           enable). Returns an exit code of 0 if at least one is enabled,
656           non-zero otherwise. Prints the current enable status (see table).
657           To suppress this output, use --quiet. To show installation targets,
658           use --full.
659
660           Table 1.  is-enabled output
661           ┌──────────────────┬─────────────────────────┬───────────┐
662Name              Description             Exit Code 
663           ├──────────────────┼─────────────────────────┼───────────┤
664           │"enabled"         │ Enabled via             │           │
665           ├──────────────────┤ .wants/, .requires/     │           │
666           │"enabled-runtime" │ or Alias= symlinks      │           │
667           │                  │ (permanently in         │ 0         │
668           │                  │ /etc/systemd/system/,   │           │
669           │                  │ or transiently in       │           │
670           │                  │ /run/systemd/system/).  │           │
671           ├──────────────────┼─────────────────────────┼───────────┤
672           │"linked"          │ Made available through  │           │
673           ├──────────────────┤ one or more symlinks    │           │
674           │"linked-runtime"  │ to the unit file        │           │
675           │                  │ (permanently in         │           │
676           │                  │ /etc/systemd/system/    │           │
677           │                  │ or transiently in       │ > 0       │
678           │                  │ /run/systemd/system/),  │           │
679           │                  │ even though the unit    │           │
680           │                  │ file might reside       │           │
681           │                  │ outside of the unit     │           │
682           │                  │ file search path.       │           │
683           ├──────────────────┼─────────────────────────┼───────────┤
684           │"alias"           │ The name is an alias    │ 0         │
685           │                  │ (symlink to another     │           │
686           │                  │ unit file).             │           │
687           ├──────────────────┼─────────────────────────┼───────────┤
688           │"masked"          │ Completely disabled,    │           │
689           ├──────────────────┤ so that any start       │           │
690           │"masked-runtime"  │ operation on it fails   │           │
691           │                  │ (permanently in         │ > 0       │
692           │                  │ /etc/systemd/system/    │           │
693           │                  │ or transiently in       │           │
694           │                  │ /run/systemd/systemd/). │           │
695           ├──────────────────┼─────────────────────────┼───────────┤
696           │"static"          │ The unit file is not    │ 0         │
697           │                  │ enabled, and has no     │           │
698           │                  │ provisions for enabling │           │
699           │                  │ in the [Install] unit   │           │
700           │                  │ file section.           │           │
701           ├──────────────────┼─────────────────────────┼───────────┤
702           │"indirect"        │ The unit file itself is │ 0         │
703           │                  │ not enabled, but it has │           │
704           │                  │ a non-empty Also=       │           │
705           │                  │ setting in the          │           │
706           │                  │ [Install] unit file     │           │
707           │                  │ section, listing other  │           │
708           │                  │ unit files that might   │           │
709           │                  │ be enabled, or it has   │           │
710           │                  │ an alias under a        │           │
711           │                  │ different name through  │           │
712           │                  │ a symlink that is not   │           │
713           │                  │ specified in Also=. For │           │
714           │                  │ template unit files, an │           │
715           │                  │ instance different than │           │
716           │                  │ the one specified in    │           │
717           │                  │ DefaultInstance= is     │           │
718           │                  │ enabled.                │           │
719           ├──────────────────┼─────────────────────────┼───────────┤
720           │"disabled"        │ The unit file is not    │ > 0       │
721           │                  │ enabled, but contains   │           │
722           │                  │ an [Install] section    │           │
723           │                  │ with installation       │           │
724           │                  │ instructions.           │           │
725           ├──────────────────┼─────────────────────────┼───────────┤
726           │"generated"       │ The unit file was       │ 0         │
727           │                  │ generated dynamically   │           │
728           │                  │ via a generator tool.   │           │
729           │                  │ See                     │           │
730           │                  │ systemd.generator(7).   │           │
731           │                  │ Generated unit files    │           │
732           │                  │ may not be enabled,     │           │
733           │                  │ they are enabled        │           │
734           │                  │ implicitly by their     │           │
735           │                  │ generator.              │           │
736           ├──────────────────┼─────────────────────────┼───────────┤
737           │"transient"       │ The unit file has been  │ 0         │
738           │                  │ created dynamically     │           │
739           │                  │ with the runtime API.   │           │
740           │                  │ Transient units may not │           │
741           │                  │ be enabled.             │           │
742           ├──────────────────┼─────────────────────────┼───────────┤
743           │"bad"             │ The unit file is        │ > 0       │
744           │                  │ invalid or another      │           │
745           │                  │ error occurred. Note    │           │
746           │                  │ that is-enabled will    │           │
747           │                  │ not actually return     │           │
748           │                  │ this state, but print   │           │
749           │                  │ an error message        │           │
750           │                  │ instead. However the    │           │
751           │                  │ unit file listing       │           │
752           │                  │ printed by              │           │
753           │                  │ list-unit-files might   │           │
754           │                  │ show it.                │           │
755           └──────────────────┴─────────────────────────┴───────────┘
756
757       mask UNIT...
758           Mask one or more units, as specified on the command line. This will
759           link these unit files to /dev/null, making it impossible to start
760           them. This is a stronger version of disable, since it prohibits all
761           kinds of activation of the unit, including enablement and manual
762           activation. Use this option with care. This honors the --runtime
763           option to only mask temporarily until the next reboot of the
764           system. The --now option may be used to ensure that the units are
765           also stopped. This command expects valid unit names only, it does
766           not accept unit file paths.
767
768       unmask UNIT...
769           Unmask one or more unit files, as specified on the command line.
770           This will undo the effect of mask. This command expects valid unit
771           names only, it does not accept unit file paths.
772
773       link PATH...
774           Link a unit file that is not in the unit file search paths into the
775           unit file search path. This command expects an absolute path to a
776           unit file. The effect of this may be undone with disable. The
777           effect of this command is that a unit file is made available for
778           commands such as start, even though it is not installed directly in
779           the unit search path. The file system where the linked unit files
780           are located must be accessible when systemd is started (e.g.
781           anything underneath /home/ or /var/ is not allowed, unless those
782           directories are located on the root file system).
783
784       revert UNIT...
785           Revert one or more unit files to their vendor versions. This
786           command removes drop-in configuration files that modify the
787           specified units, as well as any user-configured unit file that
788           overrides a matching vendor supplied unit file. Specifically, for a
789           unit "foo.service" the matching directories "foo.service.d/" with
790           all their contained files are removed, both below the persistent
791           and runtime configuration directories (i.e. below
792           /etc/systemd/system and /run/systemd/system); if the unit file has
793           a vendor-supplied version (i.e. a unit file located below /usr/)
794           any matching persistent or runtime unit file that overrides it is
795           removed, too. Note that if a unit file has no vendor-supplied
796           version (i.e. is only defined below /etc/systemd/system or
797           /run/systemd/system, but not in a unit file stored below /usr/),
798           then it is not removed. Also, if a unit is masked, it is unmasked.
799
800           Effectively, this command may be used to undo all changes made with
801           systemctl edit, systemctl set-property and systemctl mask and puts
802           the original unit file with its settings back in effect.
803
804       add-wants TARGET UNIT..., add-requires TARGET UNIT...
805           Adds "Wants=" or "Requires=" dependencies, respectively, to the
806           specified TARGET for one or more units.
807
808           This command honors --system, --user, --runtime and --global in a
809           way similar to enable.
810
811       edit UNIT...
812           Edit a drop-in snippet or a whole replacement file if --full is
813           specified, to extend or override the specified unit.
814
815           Depending on whether --system (the default), --user, or --global is
816           specified, this command creates a drop-in file for each unit either
817           for the system, for the calling user, or for all futures logins of
818           all users. Then, the editor (see the "Environment" section below)
819           is invoked on temporary files which will be written to the real
820           location if the editor exits successfully.
821
822           If --full is specified, this will copy the original units instead
823           of creating drop-in files.
824
825           If --force is specified and any units do not already exist, new
826           unit files will be opened for editing.
827
828           If --runtime is specified, the changes will be made temporarily in
829           /run/ and they will be lost on the next reboot.
830
831           If the temporary file is empty upon exit, the modification of the
832           related unit is canceled.
833
834           After the units have been edited, systemd configuration is reloaded
835           (in a way that is equivalent to daemon-reload).
836
837           Note that this command cannot be used to remotely edit units and
838           that you cannot temporarily edit units which are in /etc/, since
839           they take precedence over /run/.
840
841       get-default
842           Return the default target to boot into. This returns the target
843           unit name default.target is aliased (symlinked) to.
844
845       set-default TARGET
846           Set the default target to boot into. This sets (symlinks) the
847           default.target alias to the given target unit.
848
849   Machine Commands
850       list-machines [PATTERN...]
851           List the host and all running local containers with their state. If
852           one or more PATTERNs are specified, only containers matching one of
853           them are shown.
854
855   Job Commands
856       list-jobs [PATTERN...]
857           List jobs that are in progress. If one or more PATTERNs are
858           specified, only jobs for units matching one of them are shown.
859
860           When combined with --after or --before the list is augmented with
861           information on which other job each job is waiting for, and which
862           other jobs are waiting for it, see above.
863
864       cancel JOB...
865           Cancel one or more jobs specified on the command line by their
866           numeric job IDs. If no job ID is specified, cancel all pending
867           jobs.
868
869   Environment Commands
870       systemd supports an environment block that is passed to processes the
871       manager spawns. The names of the variables can contain ASCII letters,
872       digits, and the underscore character. Variable names cannot be empty or
873       start with a digit. In variable values, most characters are allowed,
874       but the whole sequence must be valid UTF-8. (Note that control
875       characters like newline (NL), tab (TAB), or the escape character (ESC),
876       are valid ASCII and thus valid UTF-8). The total length of the
877       environment block is limited to _SC_ARG_MAX value defined by
878       sysconf(3).
879
880       show-environment
881           Dump the systemd manager environment block. This is the environment
882           block that is passed to all processes the manager spawns. The
883           environment block will be dumped in straight-forward form suitable
884           for sourcing into most shells. If no special characters or
885           whitespace is present in the variable values, no escaping is
886           performed, and the assignments have the form "VARIABLE=value". If
887           whitespace or characters which have special meaning to the shell
888           are present, dollar-single-quote escaping is used, and assignments
889           have the form "VARIABLE=$'value'". This syntax is known to be
890           supported by bash(1), zsh(1), ksh(1), and busybox(1)'s ash(1), but
891           not dash(1) or fish(1).
892
893       set-environment VARIABLE=VALUE...
894           Set one or more systemd manager environment variables, as specified
895           on the command line. This command will fail if variable names and
896           values do not conform to the rules listed above.
897
898       unset-environment VARIABLE...
899           Unset one or more systemd manager environment variables. If only a
900           variable name is specified, it will be removed regardless of its
901           value. If a variable and a value are specified, the variable is
902           only removed if it has the specified value.
903
904       import-environment VARIABLE...
905           Import all, one or more environment variables set on the client
906           into the systemd manager environment block. If a list of
907           environment variable names is passed, client-side values are then
908           imported into the manager's environment block. If any names are not
909           valid environment variable names or have invalid values according
910           to the rules described above, an error is raised. If no arguments
911           are passed, the entire environment block inherited by the systemctl
912           process is imported. In this mode, any inherited invalid
913           environment variables are quietly ignored.
914
915           Importing of the full inherited environment block (calling this
916           command without any arguments) is deprecated. A shell will set
917           dozens of variables which only make sense locally and are only
918           meant for processes which are descendants of the shell. Such
919           variables in the global environment block are confusing to other
920           processes.
921
922   Manager State Commands
923       daemon-reload
924           Reload the systemd manager configuration. This will rerun all
925           generators (see systemd.generator(7)), reload all unit files, and
926           recreate the entire dependency tree. While the daemon is being
927           reloaded, all sockets systemd listens on behalf of user
928           configuration will stay accessible.
929
930           This command should not be confused with the reload command.
931
932       daemon-reexec
933           Reexecute the systemd manager. This will serialize the manager
934           state, reexecute the process and deserialize the state again. This
935           command is of little use except for debugging and package upgrades.
936           Sometimes, it might be helpful as a heavy-weight daemon-reload.
937           While the daemon is being reexecuted, all sockets systemd listening
938           on behalf of user configuration will stay accessible.
939
940       log-level [LEVEL]
941           If no argument is given, print the current log level of the
942           manager. If an optional argument LEVEL is provided, then the
943           command changes the current log level of the manager to LEVEL
944           (accepts the same values as --log-level= described in systemd(1)).
945
946       log-target [TARGET]
947           If no argument is given, print the current log target of the
948           manager. If an optional argument TARGET is provided, then the
949           command changes the current log target of the manager to TARGET
950           (accepts the same values as --log-target=, described in
951           systemd(1)).
952
953       service-watchdogs [yes|no]
954           If no argument is given, print the current state of service runtime
955           watchdogs of the manager. If an optional boolean argument is
956           provided, then globally enables or disables the service runtime
957           watchdogs (WatchdogSec=) and emergency actions (e.g.  OnFailure= or
958           StartLimitAction=); see systemd.service(5). The hardware watchdog
959           is not affected by this setting.
960
961   System Commands
962       is-system-running
963           Checks whether the system is operational. This returns success
964           (exit code 0) when the system is fully up and running, specifically
965           not in startup, shutdown or maintenance mode, and with no failed
966           services. Failure is returned otherwise (exit code non-zero). In
967           addition, the current state is printed in a short string to
968           standard output, see the table below. Use --quiet to suppress this
969           output.
970
971           Use --wait to wait until the boot process is completed before
972           printing the current state and returning the appropriate error
973           status. If --wait is in use, states initializing or starting will
974           not be reported, instead the command will block until a later state
975           (such as running or degraded) is reached.
976
977           Table 2. is-system-running output
978           ┌─────────────┬─────────────────────┬───────────┐
979Name         Description         Exit Code 
980           ├─────────────┼─────────────────────┼───────────┤
981initializing │ Early bootup,       │ > 0       │
982           │             │ before basic.target │           │
983           │             │ is reached or the   │           │
984           │             │ maintenance state   │           │
985           │             │ entered.            │           │
986           ├─────────────┼─────────────────────┼───────────┤
987starting     │ Late bootup, before │ > 0       │
988           │             │ the job queue       │           │
989           │             │ becomes idle for    │           │
990           │             │ the first time, or  │           │
991           │             │ one of the rescue   │           │
992           │             │ targets are         │           │
993           │             │ reached.            │           │
994           ├─────────────┼─────────────────────┼───────────┤
995running      │ The system is fully │ 0         │
996           │             │ operational.        │           │
997           ├─────────────┼─────────────────────┼───────────┤
998degraded     │ The system is       │ > 0       │
999           │             │ operational but one │           │
1000           │             │ or more units       │           │
1001           │             │ failed.             │           │
1002           ├─────────────┼─────────────────────┼───────────┤
1003maintenance  │ The rescue or       │ > 0       │
1004           │             │ emergency target is │           │
1005           │             │ active.             │           │
1006           ├─────────────┼─────────────────────┼───────────┤
1007stopping     │ The manager is      │ > 0       │
1008           │             │ shutting down.      │           │
1009           ├─────────────┼─────────────────────┼───────────┤
1010offline      │ The manager is not  │ > 0       │
1011           │             │ running.            │           │
1012           │             │ Specifically, this  │           │
1013           │             │ is the operational  │           │
1014           │             │ state if an         │           │
1015           │             │ incompatible        │           │
1016           │             │ program is running  │           │
1017           │             │ as system manager   │           │
1018           │             │ (PID 1).            │           │
1019           ├─────────────┼─────────────────────┼───────────┤
1020unknown      │ The operational     │ > 0       │
1021           │             │ state could not be  │           │
1022           │             │ determined, due to  │           │
1023           │             │ lack of resources   │           │
1024           │             │ or another error    │           │
1025           │             │ cause.              │           │
1026           └─────────────┴─────────────────────┴───────────┘
1027
1028       default
1029           Enter default mode. This is equivalent to systemctl isolate
1030           default.target. This operation is blocking by default, use
1031           --no-block to request asynchronous behavior.
1032
1033       rescue
1034           Enter rescue mode. This is equivalent to systemctl isolate
1035           rescue.target. This operation is blocking by default, use
1036           --no-block to request asynchronous behavior.
1037
1038       emergency
1039           Enter emergency mode. This is equivalent to systemctl isolate
1040           emergency.target. This operation is blocking by default, use
1041           --no-block to request asynchronous behavior.
1042
1043       halt
1044           Shut down and halt the system. This is mostly equivalent to
1045           systemctl start halt.target --job-mode=replace-irreversibly
1046           --no-block, but also prints a wall message to all users. This
1047           command is asynchronous; it will return after the halt operation is
1048           enqueued, without waiting for it to complete. Note that this
1049           operation will simply halt the OS kernel after shutting down,
1050           leaving the hardware powered on. Use systemctl poweroff for
1051           powering off the system (see below).
1052
1053           If combined with --force, shutdown of all running services is
1054           skipped, however all processes are killed and all file systems are
1055           unmounted or mounted read-only, immediately followed by the system
1056           halt. If --force is specified twice, the operation is immediately
1057           executed without terminating any processes or unmounting any file
1058           systems. This may result in data loss. Note that when --force is
1059           specified twice the halt operation is executed by systemctl itself,
1060           and the system manager is not contacted. This means the command
1061           should succeed even when the system manager has crashed.
1062
1063       poweroff
1064           Shut down and power-off the system. This is mostly equivalent to
1065           systemctl start poweroff.target --job-mode=replace-irreversibly
1066           --no-block, but also prints a wall message to all users. This
1067           command is asynchronous; it will return after the power-off
1068           operation is enqueued, without waiting for it to complete.
1069
1070           If combined with --force, shutdown of all running services is
1071           skipped, however all processes are killed and all file systems are
1072           unmounted or mounted read-only, immediately followed by the
1073           powering off. If --force is specified twice, the operation is
1074           immediately executed without terminating any processes or
1075           unmounting any file systems. This may result in data loss. Note
1076           that when --force is specified twice the power-off operation is
1077           executed by systemctl itself, and the system manager is not
1078           contacted. This means the command should succeed even when the
1079           system manager has crashed.
1080
1081       reboot
1082           Shut down and reboot the system. This is mostly equivalent to
1083           systemctl start reboot.target --job-mode=replace-irreversibly
1084           --no-block, but also prints a wall message to all users. This
1085           command is asynchronous; it will return after the reboot operation
1086           is enqueued, without waiting for it to complete.
1087
1088           If combined with --force, shutdown of all running services is
1089           skipped, however all processes are killed and all file systems are
1090           unmounted or mounted read-only, immediately followed by the reboot.
1091           If --force is specified twice, the operation is immediately
1092           executed without terminating any processes or unmounting any file
1093           systems. This may result in data loss. Note that when --force is
1094           specified twice the reboot operation is executed by systemctl
1095           itself, and the system manager is not contacted. This means the
1096           command should succeed even when the system manager has crashed.
1097
1098           If the switch --reboot-argument= is given, it will be passed as the
1099           optional argument to the reboot(2) system call.
1100
1101       kexec
1102           Shut down and reboot the system via kexec. This is equivalent to
1103           systemctl start kexec.target --job-mode=replace-irreversibly
1104           --no-block. This command is asynchronous; it will return after the
1105           reboot operation is enqueued, without waiting for it to complete.
1106
1107           If combined with --force, shutdown of all running services is
1108           skipped, however all processes are killed and all file systems are
1109           unmounted or mounted read-only, immediately followed by the reboot.
1110
1111       exit [EXIT_CODE]
1112           Ask the service manager to quit. This is only supported for user
1113           service managers (i.e. in conjunction with the --user option) or in
1114           containers and is equivalent to poweroff otherwise. This command is
1115           asynchronous; it will return after the exit operation is enqueued,
1116           without waiting for it to complete.
1117
1118           The service manager will exit with the specified exit code, if
1119           EXIT_CODE is passed.
1120
1121       switch-root ROOT [INIT]
1122           Switches to a different root directory and executes a new system
1123           manager process below it. This is intended for usage in initial RAM
1124           disks ("initrd"), and will transition from the initrd's system
1125           manager process (a.k.a. "init" process) to the main system manager
1126           process which is loaded from the actual host volume. This call
1127           takes two arguments: the directory that is to become the new root
1128           directory, and the path to the new system manager binary below it
1129           to execute as PID 1. If the latter is omitted or the empty string,
1130           a systemd binary will automatically be searched for and used as
1131           init. If the system manager path is omitted, equal to the empty
1132           string or identical to the path to the systemd binary, the state of
1133           the initrd's system manager process is passed to the main system
1134           manager, which allows later introspection of the state of the
1135           services involved in the initrd boot phase.
1136
1137       suspend
1138           Suspend the system. This will trigger activation of the special
1139           target unit suspend.target. This command is asynchronous, and will
1140           return after the suspend operation is successfully enqueued. It
1141           will not wait for the suspend/resume cycle to complete.
1142
1143       hibernate
1144           Hibernate the system. This will trigger activation of the special
1145           target unit hibernate.target. This command is asynchronous, and
1146           will return after the hibernation operation is successfully
1147           enqueued. It will not wait for the hibernate/thaw cycle to
1148           complete.
1149
1150       hybrid-sleep
1151           Hibernate and suspend the system. This will trigger activation of
1152           the special target unit hybrid-sleep.target. This command is
1153           asynchronous, and will return after the hybrid sleep operation is
1154           successfully enqueued. It will not wait for the sleep/wake-up cycle
1155           to complete.
1156
1157       suspend-then-hibernate
1158           Suspend the system and hibernate it after the delay specified in
1159           systemd-sleep.conf. This will trigger activation of the special
1160           target unit suspend-then-hibernate.target. This command is
1161           asynchronous, and will return after the hybrid sleep operation is
1162           successfully enqueued. It will not wait for the sleep/wake-up or
1163           hibernate/thaw cycle to complete.
1164
1165   Parameter Syntax
1166       Unit commands listed above take either a single unit name (designated
1167       as UNIT), or multiple unit specifications (designated as PATTERN...).
1168       In the first case, the unit name with or without a suffix must be
1169       given. If the suffix is not specified (unit name is "abbreviated"),
1170       systemctl will append a suitable suffix, ".service" by default, and a
1171       type-specific suffix in case of commands which operate only on specific
1172       unit types. For example,
1173
1174           # systemctl start sshd
1175
1176       and
1177
1178           # systemctl start sshd.service
1179
1180       are equivalent, as are
1181
1182           # systemctl isolate default
1183
1184       and
1185
1186           # systemctl isolate default.target
1187
1188       Note that (absolute) paths to device nodes are automatically converted
1189       to device unit names, and other (absolute) paths to mount unit names.
1190
1191           # systemctl status /dev/sda
1192           # systemctl status /home
1193
1194       are equivalent to:
1195
1196           # systemctl status dev-sda.device
1197           # systemctl status home.mount
1198
1199       In the second case, shell-style globs will be matched against the
1200       primary names of all units currently in memory; literal unit names,
1201       with or without a suffix, will be treated as in the first case. This
1202       means that literal unit names always refer to exactly one unit, but
1203       globs may match zero units and this is not considered an error.
1204
1205       Glob patterns use fnmatch(3), so normal shell-style globbing rules are
1206       used, and "*", "?", "[]" may be used. See glob(7) for more details. The
1207       patterns are matched against the primary names of units currently in
1208       memory, and patterns which do not match anything are silently skipped.
1209       For example:
1210
1211           # systemctl stop sshd@*.service
1212
1213       will stop all sshd@.service instances. Note that alias names of units,
1214       and units that aren't in memory are not considered for glob expansion.
1215
1216       For unit file commands, the specified UNIT should be the name of the
1217       unit file (possibly abbreviated, see above), or the absolute path to
1218       the unit file:
1219
1220           # systemctl enable foo.service
1221
1222       or
1223
1224           # systemctl link /path/to/foo.service
1225
1226

OPTIONS

1228       The following options are understood:
1229
1230       -t, --type=
1231           The argument should be a comma-separated list of unit types such as
1232           service and socket.
1233
1234           If one of the arguments is a unit type, when listing units, limit
1235           display to certain unit types. Otherwise, units of all types will
1236           be shown.
1237
1238           As a special case, if one of the arguments is help, a list of
1239           allowed values will be printed and the program will exit.
1240
1241       --state=
1242           The argument should be a comma-separated list of unit LOAD, SUB, or
1243           ACTIVE states. When listing units, show only those in the specified
1244           states. Use --state=failed to show only failed units.
1245
1246           As a special case, if one of the arguments is help, a list of
1247           allowed values will be printed and the program will exit.
1248
1249       -p, --property=
1250           When showing unit/job/manager properties with the show command,
1251           limit display to properties specified in the argument. The argument
1252           should be a comma-separated list of property names, such as
1253           "MainPID". Unless specified, all known properties are shown. If
1254           specified more than once, all properties with the specified names
1255           are shown. Shell completion is implemented for property names.
1256
1257           For the manager itself, systemctl show will show all available
1258           properties, most of which are derived or closely match the options
1259           described in systemd-system.conf(5).
1260
1261           Properties for units vary by unit type, so showing any unit (even a
1262           non-existent one) is a way to list properties pertaining to this
1263           type. Similarly, showing any job will list properties pertaining to
1264           all jobs. Properties for units are documented in systemd.unit(5),
1265           and the pages for individual unit types systemd.service(5),
1266           systemd.socket(5), etc.
1267
1268       -P
1269           Equivalent to --value --property=, i.e. shows the value of the
1270           property without the property name or "=". Note that using -P once
1271           will also affect all properties listed with -p/--property=.
1272
1273       -a, --all
1274           When listing units with list-units, also show inactive units and
1275           units which are following other units. When showing
1276           unit/job/manager properties, show all properties regardless whether
1277           they are set or not.
1278
1279           To list all units installed in the file system, use the
1280           list-unit-files command instead.
1281
1282           When listing units with list-dependencies, recursively show
1283           dependencies of all dependent units (by default only dependencies
1284           of target units are shown).
1285
1286           When used with status, show journal messages in full, even if they
1287           include unprintable characters or are very long. By default, fields
1288           with unprintable characters are abbreviated as "blob data". (Note
1289           that the pager may escape unprintable characters again.)
1290
1291       -r, --recursive
1292           When listing units, also show units of local containers. Units of
1293           local containers will be prefixed with the container name,
1294           separated by a single colon character (":").
1295
1296       --reverse
1297           Show reverse dependencies between units with list-dependencies,
1298           i.e. follow dependencies of type WantedBy=, RequiredBy=, PartOf=,
1299           BoundBy=, instead of Wants= and similar.
1300
1301       --after
1302           With list-dependencies, show the units that are ordered before the
1303           specified unit. In other words, recursively list units following
1304           the After= dependency.
1305
1306           Note that any After= dependency is automatically mirrored to create
1307           a Before= dependency. Temporal dependencies may be specified
1308           explicitly, but are also created implicitly for units which are
1309           WantedBy= targets (see systemd.target(5)), and as a result of other
1310           directives (for example RequiresMountsFor=). Both explicitly and
1311           implicitly introduced dependencies are shown with
1312           list-dependencies.
1313
1314           When passed to the list-jobs command, for each printed job show
1315           which other jobs are waiting for it. May be combined with --before
1316           to show both the jobs waiting for each job as well as all jobs each
1317           job is waiting for.
1318
1319       --before
1320           With list-dependencies, show the units that are ordered after the
1321           specified unit. In other words, recursively list units following
1322           the Before= dependency.
1323
1324           When passed to the list-jobs command, for each printed job show
1325           which other jobs it is waiting for. May be combined with --after to
1326           show both the jobs waiting for each job as well as all jobs each
1327           job is waiting for.
1328
1329       --with-dependencies
1330           When used with status, cat, list-units, and list-unit-files, those
1331           commands print all specified units and the dependencies of those
1332           units.
1333
1334           Options --reverse, --after, --before may be used to change what
1335           types of dependencies are shown.
1336
1337       -l, --full
1338           Do not ellipsize unit names, process tree entries, journal output,
1339           or truncate unit descriptions in the output of status, list-units,
1340           list-jobs, and list-timers.
1341
1342           Also, show installation targets in the output of is-enabled.
1343
1344       --value
1345           When printing properties with show, only print the value, and skip
1346           the property name and "=". Also see option -P above.
1347
1348       --show-types
1349           When showing sockets, show the type of the socket.
1350
1351       --job-mode=
1352           When queuing a new job, this option controls how to deal with
1353           already queued jobs. It takes one of "fail", "replace",
1354           "replace-irreversibly", "isolate", "ignore-dependencies",
1355           "ignore-requirements", "flush", or "triggering". Defaults to
1356           "replace", except when the isolate command is used which implies
1357           the "isolate" job mode.
1358
1359           If "fail" is specified and a requested operation conflicts with a
1360           pending job (more specifically: causes an already pending start job
1361           to be reversed into a stop job or vice versa), cause the operation
1362           to fail.
1363
1364           If "replace" (the default) is specified, any conflicting pending
1365           job will be replaced, as necessary.
1366
1367           If "replace-irreversibly" is specified, operate like "replace", but
1368           also mark the new jobs as irreversible. This prevents future
1369           conflicting transactions from replacing these jobs (or even being
1370           enqueued while the irreversible jobs are still pending).
1371           Irreversible jobs can still be cancelled using the cancel command.
1372           This job mode should be used on any transaction which pulls in
1373           shutdown.target.
1374
1375           "isolate" is only valid for start operations and causes all other
1376           units to be stopped when the specified unit is started. This mode
1377           is always used when the isolate command is used.
1378
1379           "flush" will cause all queued jobs to be canceled when the new job
1380           is enqueued.
1381
1382           If "ignore-dependencies" is specified, then all unit dependencies
1383           are ignored for this new job and the operation is executed
1384           immediately. If passed, no required units of the unit passed will
1385           be pulled in, and no ordering dependencies will be honored. This is
1386           mostly a debugging and rescue tool for the administrator and should
1387           not be used by applications.
1388
1389           "ignore-requirements" is similar to "ignore-dependencies", but only
1390           causes the requirement dependencies to be ignored, the ordering
1391           dependencies will still be honored.
1392
1393           "triggering" may only be used with systemctl stop. In this mode,
1394           the specified unit and any active units that trigger it are
1395           stopped. See the discussion of Triggers= in systemd.unit(5) for
1396           more information about triggering units.
1397
1398       -T, --show-transaction
1399           When enqueuing a unit job (for example as effect of a systemctl
1400           start invocation or similar), show brief information about all jobs
1401           enqueued, covering both the requested job and any added because of
1402           unit dependencies. Note that the output will only include jobs
1403           immediately part of the transaction requested. It is possible that
1404           service start-up program code run as effect of the enqueued jobs
1405           might request further jobs to be pulled in. This means that
1406           completion of the listed jobs might ultimately entail more jobs
1407           than the listed ones.
1408
1409       --fail
1410           Shorthand for --job-mode=fail.
1411
1412           When used with the kill command, if no units were killed, the
1413           operation results in an error.
1414
1415       --check-inhibitors=
1416           When system shutdown or sleep state is request, this option
1417           controls how to deal with inhibitor locks. It takes one of "auto",
1418           "yes" or "no". Defaults to "auto", which will behave like "yes" for
1419           interactive invocations (i.e. from a TTY) and "no" for
1420           non-interactive invocations.  "yes" will let the request respect
1421           inhibitor locks.  "no" will let the request ignore inhibitor locks.
1422
1423           Applications can establish inhibitor locks to avoid that certain
1424           important operations (such as CD burning or suchlike) are
1425           interrupted by system shutdown or a sleep state. Any user may take
1426           these locks and privileged users may override these locks. If any
1427           locks are taken, shutdown and sleep state requests will normally
1428           fail (unless privileged) and a list of active locks is printed.
1429           However, if "no" is specified or "auto" is specified on a
1430           non-interactive requests, the established locks are ignored and not
1431           shown, and the operation attempted anyway, possibly requiring
1432           additional privileges. May be overridden by --force.
1433
1434       -i
1435           Shortcut for --check-inhibitors=no.
1436
1437       --dry-run
1438           Just print what would be done. Currently supported by verbs halt,
1439           poweroff, reboot, kexec, suspend, hibernate, hybrid-sleep,
1440           suspend-then-hibernate, default, rescue, emergency, and exit.
1441
1442       -q, --quiet
1443           Suppress printing of the results of various commands and also the
1444           hints about truncated log lines. This does not suppress output of
1445           commands for which the printed output is the only result (like
1446           show). Errors are always printed.
1447
1448       --no-block
1449           Do not synchronously wait for the requested operation to finish. If
1450           this is not specified, the job will be verified, enqueued and
1451           systemctl will wait until the unit's start-up is completed. By
1452           passing this argument, it is only verified and enqueued. This
1453           option may not be combined with --wait.
1454
1455       --wait
1456           Synchronously wait for started units to terminate again. This
1457           option may not be combined with --no-block. Note that this will
1458           wait forever if any given unit never terminates (by itself or by
1459           getting stopped explicitly); particularly services which use
1460           "RemainAfterExit=yes".
1461
1462           When used with is-system-running, wait until the boot process is
1463           completed before returning.
1464
1465       --user
1466           Talk to the service manager of the calling user, rather than the
1467           service manager of the system.
1468
1469       --system
1470           Talk to the service manager of the system. This is the implied
1471           default.
1472
1473       --failed
1474           List units in failed state. This is equivalent to --state=failed.
1475
1476       --no-wall
1477           Do not send wall message before halt, power-off and reboot.
1478
1479       --global
1480           When used with enable and disable, operate on the global user
1481           configuration directory, thus enabling or disabling a unit file
1482           globally for all future logins of all users.
1483
1484       --no-reload
1485           When used with enable and disable, do not implicitly reload daemon
1486           configuration after executing the changes.
1487
1488       --no-ask-password
1489           When used with start and related commands, disables asking for
1490           passwords. Background services may require input of a password or
1491           passphrase string, for example to unlock system hard disks or
1492           cryptographic certificates. Unless this option is specified and the
1493           command is invoked from a terminal, systemctl will query the user
1494           on the terminal for the necessary secrets. Use this option to
1495           switch this behavior off. In this case, the password must be
1496           supplied by some other means (for example graphical password
1497           agents) or the service might fail. This also disables querying the
1498           user for authentication for privileged operations.
1499
1500       --kill-who=
1501           When used with kill, choose which processes to send a signal to.
1502           Must be one of main, control or all to select whether to kill only
1503           the main process, the control process or all processes of the unit.
1504           The main process of the unit is the one that defines the life-time
1505           of it. A control process of a unit is one that is invoked by the
1506           manager to induce state changes of it. For example, all processes
1507           started due to the ExecStartPre=, ExecStop= or ExecReload= settings
1508           of service units are control processes. Note that there is only one
1509           control process per unit at a time, as only one state change is
1510           executed at a time. For services of type Type=forking, the initial
1511           process started by the manager for ExecStart= is a control process,
1512           while the process ultimately forked off by that one is then
1513           considered the main process of the unit (if it can be determined).
1514           This is different for service units of other types, where the
1515           process forked off by the manager for ExecStart= is always the main
1516           process itself. A service unit consists of zero or one main
1517           process, zero or one control process plus any number of additional
1518           processes. Not all unit types manage processes of these types
1519           however. For example, for mount units, control processes are
1520           defined (which are the invocations of /usr/bin/mount and
1521           /usr/bin/umount), but no main process is defined. If omitted,
1522           defaults to all.
1523
1524       -s, --signal=
1525           When used with kill, choose which signal to send to selected
1526           processes. Must be one of the well-known signal specifiers such as
1527           SIGTERM, SIGINT or SIGSTOP. If omitted, defaults to SIGTERM.
1528
1529           The special value "help" will list the known values and the program
1530           will exit immediately, and the special value "list" will list known
1531           values along with the numerical signal numbers and the program will
1532           exit immediately.
1533
1534       --what=
1535           Select what type of per-unit resources to remove when the clean
1536           command is invoked, see below. Takes one of configuration, state,
1537           cache, logs, runtime to select the type of resource. This option
1538           may be specified more than once, in which case all specified
1539           resource types are removed. Also accepts the special value all as a
1540           shortcut for specifying all five resource types. If this option is
1541           not specified defaults to the combination of cache and runtime,
1542           i.e. the two kinds of resources that are generally considered to be
1543           redundant and can be reconstructed on next invocation.
1544
1545       -f, --force
1546           When used with enable, overwrite any existing conflicting symlinks.
1547
1548           When used with edit, create all of the specified units which do not
1549           already exist.
1550
1551           When used with halt, poweroff, reboot or kexec, execute the
1552           selected operation without shutting down all units. However, all
1553           processes will be killed forcibly and all file systems are
1554           unmounted or remounted read-only. This is hence a drastic but
1555           relatively safe option to request an immediate reboot. If --force
1556           is specified twice for these operations (with the exception of
1557           kexec), they will be executed immediately, without terminating any
1558           processes or unmounting any file systems. Warning: specifying
1559           --force twice with any of these operations might result in data
1560           loss. Note that when --force is specified twice the selected
1561           operation is executed by systemctl itself, and the system manager
1562           is not contacted. This means the command should succeed even when
1563           the system manager has crashed.
1564
1565       --message=
1566           When used with halt, poweroff or reboot, set a short message
1567           explaining the reason for the operation. The message will be logged
1568           together with the default shutdown message.
1569
1570       --now
1571           When used with enable, the units will also be started. When used
1572           with disable or mask, the units will also be stopped. The start or
1573           stop operation is only carried out when the respective enable or
1574           disable operation has been successful.
1575
1576       --root=
1577           When used with enable/disable/is-enabled (and related commands),
1578           use the specified root path when looking for unit files. If this
1579           option is present, systemctl will operate on the file system
1580           directly, instead of communicating with the systemd daemon to carry
1581           out changes.
1582
1583       --runtime
1584           When used with enable, disable, edit, (and related commands), make
1585           changes only temporarily, so that they are lost on the next reboot.
1586           This will have the effect that changes are not made in
1587           subdirectories of /etc/ but in /run/, with identical immediate
1588           effects, however, since the latter is lost on reboot, the changes
1589           are lost too.
1590
1591           Similarly, when used with set-property, make changes only
1592           temporarily, so that they are lost on the next reboot.
1593
1594       --preset-mode=
1595           Takes one of "full" (the default), "enable-only", "disable-only".
1596           When used with the preset or preset-all commands, controls whether
1597           units shall be disabled and enabled according to the preset rules,
1598           or only enabled, or only disabled.
1599
1600       -n, --lines=
1601           When used with status, controls the number of journal lines to
1602           show, counting from the most recent ones. Takes a positive integer
1603           argument, or 0 to disable journal output. Defaults to 10.
1604
1605       -o, --output=
1606           When used with status, controls the formatting of the journal
1607           entries that are shown. For the available choices, see
1608           journalctl(1). Defaults to "short".
1609
1610       --firmware-setup
1611           When used with the reboot command, indicate to the system's
1612           firmware to reboot into the firmware setup interface. Note that
1613           this functionality is not available on all systems.
1614
1615       --boot-loader-menu=
1616           When used with the reboot command, indicate to the system's boot
1617           loader to show the boot loader menu on the following boot. Takes a
1618           time value as parameter — indicating the menu timeout. Pass zero in
1619           order to disable the menu timeout. Note that not all boot loaders
1620           support this functionality.
1621
1622       --boot-loader-entry=
1623           When used with the reboot command, indicate to the system's boot
1624           loader to boot into a specific boot loader entry on the following
1625           boot. Takes a boot loader entry identifier as argument, or "help"
1626           in order to list available entries. Note that not all boot loaders
1627           support this functionality.
1628
1629       --reboot-argument=
1630           This switch is used with reboot. The value is architecture and
1631           firmware specific. As an example, "recovery" might be used to
1632           trigger system recovery, and "fota" might be used to trigger a
1633           “firmware over the air” update.
1634
1635       --plain
1636           When used with list-dependencies, list-units or list-machines, the
1637           output is printed as a list instead of a tree, and the bullet
1638           circles are omitted.
1639
1640       --timestamp=
1641           Change the format of printed timestamps. The following values may
1642           be used:
1643
1644           pretty (this is the default)
1645               "Day YYYY-MM-DD HH:MM:SS TZ"
1646
1647           us, µs
1648               "Day YYYY-MM-DD HH:MM:SS.UUUUUU TZ"
1649
1650           utc
1651               "Day YYYY-MM-DD HH:MM:SS UTC"
1652
1653           us+utc, µs+utc
1654               "Day YYYY-MM-DD HH:MM:SS.UUUUUU UTC"
1655
1656       --mkdir
1657           When used with bind, creates the destination file or directory
1658           before applying the bind mount. Note that even though the name of
1659           this option suggests that it is suitable only for directories, this
1660           option also creates the destination file node to mount over if the
1661           object to mount is not a directory, but a regular file, device
1662           node, socket or FIFO.
1663
1664       --marked
1665           Only allowed with reload-or-restart. Enqueues restart jobs for all
1666           units that have the "needs-restart" mark, and reload jobs for units
1667           that have the "needs-reload" mark. When a unit marked for reload
1668           does not support reload, restart will be queued. Those properties
1669           can be set using set-property Marks.
1670
1671           Unless --no-block is used, systemctl will wait for the queued jobs
1672           to finish.
1673
1674       --read-only
1675           When used with bind, creates a read-only bind mount.
1676
1677       -H, --host=
1678           Execute the operation remotely. Specify a hostname, or a username
1679           and hostname separated by "@", to connect to. The hostname may
1680           optionally be suffixed by a port ssh is listening on, separated by
1681           ":", and then a container name, separated by "/", which connects
1682           directly to a specific container on the specified host. This will
1683           use SSH to talk to the remote machine manager instance. Container
1684           names may be enumerated with machinectl -H HOST. Put IPv6 addresses
1685           in brackets.
1686
1687       -M, --machine=
1688           Execute operation on a local container. Specify a container name to
1689           connect to, optionally prefixed by a user name to connect as and a
1690           separating "@" character. If the special string ".host" is used in
1691           place of the container name, a connection to the local system is
1692           made (which is useful to connect to a specific user's user bus:
1693           "--user --machine=lennart@.host"). If the "@" syntax is not used,
1694           the connection is made as root user. If the "@" syntax is used
1695           either the left hand side or the right hand side may be omitted
1696           (but not both) in which case the local user name and ".host" are
1697           implied.
1698
1699       --no-pager
1700           Do not pipe output into a pager.
1701
1702       --legend=BOOL
1703           Enable or disable printing of the legend, i.e. column headers and
1704           the footer with hints. The legend is printed by default, unless
1705           disabled with --quiet or similar.
1706
1707       -h, --help
1708           Print a short help text and exit.
1709
1710       --version
1711           Print a short version string and exit.
1712

EXIT STATUS

1714       On success, 0 is returned, a non-zero failure code otherwise.
1715
1716       systemctl uses the return codes defined by LSB, as defined in LSB
1717       3.0.0[1].
1718
1719       Table 3. LSB return codes
1720       ┌──────┬─────────────────────┬─────────────────────┐
1721Value Description in LSB  Use in systemd      
1722       ├──────┼─────────────────────┼─────────────────────┤
17230     │ "program is running │ unit is active      │
1724       │      │ or service is OK"   │                     │
1725       ├──────┼─────────────────────┼─────────────────────┤
17261     │ "program is dead    │ unit not failed     │
1727       │      │ and /var/run pid    │ (used by is-failed) │
1728       │      │ file exists"        │                     │
1729       ├──────┼─────────────────────┼─────────────────────┤
17302     │ "program is dead    │ unused              │
1731       │      │ and /var/lock lock  │                     │
1732       │      │ file exists"        │                     │
1733       ├──────┼─────────────────────┼─────────────────────┤
17343     │ "program is not     │ unit is not active  │
1735       │      │ running"            │                     │
1736       ├──────┼─────────────────────┼─────────────────────┤
17374     │ "program or service │ no such unit        │
1738       │      │ status is unknown"  │                     │
1739       └──────┴─────────────────────┴─────────────────────┘
1740
1741       The mapping of LSB service states to systemd unit states is imperfect,
1742       so it is better to not rely on those return values but to look for
1743       specific unit states and substates instead.
1744

ENVIRONMENT

1746       $SYSTEMD_EDITOR
1747           Editor to use when editing units; overrides $EDITOR and $VISUAL. If
1748           neither $SYSTEMD_EDITOR nor $EDITOR nor $VISUAL are present or if
1749           it is set to an empty string or if their execution failed,
1750           systemctl will try to execute well known editors in this order:
1751           editor(1), nano(1), vim(1), vi(1).
1752
1753       $SYSTEMD_LOG_LEVEL
1754           The maximum log level of emitted messages (messages with a higher
1755           log level, i.e. less important ones, will be suppressed). Either
1756           one of (in order of decreasing importance) emerg, alert, crit, err,
1757           warning, notice, info, debug, or an integer in the range 0...7. See
1758           syslog(3) for more information.
1759
1760       $SYSTEMD_LOG_COLOR
1761           A boolean. If true, messages written to the tty will be colored
1762           according to priority.
1763
1764           This setting is only useful when messages are written directly to
1765           the terminal, because journalctl(1) and other tools that display
1766           logs will color messages based on the log level on their own.
1767
1768       $SYSTEMD_LOG_TIME
1769           A boolean. If true, console log messages will be prefixed with a
1770           timestamp.
1771
1772           This setting is only useful when messages are written directly to
1773           the terminal or a file, because journalctl(1) and other tools that
1774           display logs will attach timestamps based on the entry metadata on
1775           their own.
1776
1777       $SYSTEMD_LOG_LOCATION
1778           A boolean. If true, messages will be prefixed with a filename and
1779           line number in the source code where the message originates.
1780
1781           Note that the log location is often attached as metadata to journal
1782           entries anyway. Including it directly in the message text can
1783           nevertheless be convenient when debugging programs.
1784
1785       $SYSTEMD_LOG_TARGET
1786           The destination for log messages. One of console (log to the
1787           attached tty), console-prefixed (log to the attached tty but with
1788           prefixes encoding the log level and "facility", see syslog(3), kmsg
1789           (log to the kernel circular log buffer), journal (log to the
1790           journal), journal-or-kmsg (log to the journal if available, and to
1791           kmsg otherwise), auto (determine the appropriate log target
1792           automatically, the default), null (disable log output).
1793
1794       $SYSTEMD_PAGER
1795           Pager to use when --no-pager is not given; overrides $PAGER. If
1796           neither $SYSTEMD_PAGER nor $PAGER are set, a set of well-known
1797           pager implementations are tried in turn, including less(1) and
1798           more(1), until one is found. If no pager implementation is
1799           discovered no pager is invoked. Setting this environment variable
1800           to an empty string or the value "cat" is equivalent to passing
1801           --no-pager.
1802
1803       $SYSTEMD_LESS
1804           Override the options passed to less (by default "FRSXMK").
1805
1806           Users might want to change two options in particular:
1807
1808           K
1809               This option instructs the pager to exit immediately when Ctrl+C
1810               is pressed. To allow less to handle Ctrl+C itself to switch
1811               back to the pager command prompt, unset this option.
1812
1813               If the value of $SYSTEMD_LESS does not include "K", and the
1814               pager that is invoked is less, Ctrl+C will be ignored by the
1815               executable, and needs to be handled by the pager.
1816
1817           X
1818               This option instructs the pager to not send termcap
1819               initialization and deinitialization strings to the terminal. It
1820               is set by default to allow command output to remain visible in
1821               the terminal even after the pager exits. Nevertheless, this
1822               prevents some pager functionality from working, in particular
1823               paged output cannot be scrolled with the mouse.
1824
1825           See less(1) for more discussion.
1826
1827       $SYSTEMD_LESSCHARSET
1828           Override the charset passed to less (by default "utf-8", if the
1829           invoking terminal is determined to be UTF-8 compatible).
1830
1831       $SYSTEMD_PAGERSECURE
1832           Takes a boolean argument. When true, the "secure" mode of the pager
1833           is enabled; if false, disabled. If $SYSTEMD_PAGERSECURE is not set
1834           at all, secure mode is enabled if the effective UID is not the same
1835           as the owner of the login session, see geteuid(2) and
1836           sd_pid_get_owner_uid(3). In secure mode, LESSSECURE=1 will be set
1837           when invoking the pager, and the pager shall disable commands that
1838           open or create new files or start new subprocesses. When
1839           $SYSTEMD_PAGERSECURE is not set at all, pagers which are not known
1840           to implement secure mode will not be used. (Currently only less(1)
1841           implements secure mode.)
1842
1843           Note: when commands are invoked with elevated privileges, for
1844           example under sudo(8) or pkexec(1), care must be taken to ensure
1845           that unintended interactive features are not enabled. "Secure" mode
1846           for the pager may be enabled automatically as describe above.
1847           Setting SYSTEMD_PAGERSECURE=0 or not removing it from the inherited
1848           environment allows the user to invoke arbitrary commands. Note that
1849           if the $SYSTEMD_PAGER or $PAGER variables are to be honoured,
1850           $SYSTEMD_PAGERSECURE must be set too. It might be reasonable to
1851           completely disable the pager using --no-pager instead.
1852
1853       $SYSTEMD_COLORS
1854           Takes a boolean argument. When true, systemd and related utilities
1855           will use colors in their output, otherwise the output will be
1856           monochrome. Additionally, the variable can take one of the
1857           following special values: "16", "256" to restrict the use of colors
1858           to the base 16 or 256 ANSI colors, respectively. This can be
1859           specified to override the automatic decision based on $TERM and
1860           what the console is connected to.
1861
1862       $SYSTEMD_URLIFY
1863           The value must be a boolean. Controls whether clickable links
1864           should be generated in the output for terminal emulators supporting
1865           this. This can be specified to override the decision that systemd
1866           makes based on $TERM and other conditions.
1867

SEE ALSO

1869       systemd(1), journalctl(1), loginctl(1), machinectl(1), systemd.unit(5),
1870       systemd.resource-control(5), systemd.special(7), wall(1),
1871       systemd.preset(5), systemd.generator(7), glob(7)
1872

NOTES

1874        1. LSB 3.0.0
1875           http://refspecs.linuxbase.org/LSB_3.0.0/LSB-PDA/LSB-PDA/iniscrptact.html
1876
1877
1878
1879systemd 250                                                       SYSTEMCTL(1)
Impressum