]> git.ipfire.org Git - thirdparty/systemd.git/blob - man/systemctl.xml
gnome-ask-password-agent.vala: check for VALA_0_12
[thirdparty/systemd.git] / man / systemctl.xml
1 <?xml version='1.0'?> <!--*-nxml-*-->
2 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4
5 <!--
6 This file is part of systemd.
7
8 Copyright 2010 Lennart Poettering
9
10 systemd is free software; you can redistribute it and/or modify it
11 under the terms of the GNU General Public License as published by
12 the Free Software Foundation; either version 2 of the License, or
13 (at your option) any later version.
14
15 systemd is distributed in the hope that it will be useful, but
16 WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 General Public License for more details.
19
20 You should have received a copy of the GNU General Public License
21 along with systemd; If not, see <http://www.gnu.org/licenses/>.
22 -->
23
24 <refentry id="systemctl">
25
26 <refentryinfo>
27 <title>systemctl</title>
28 <productname>systemd</productname>
29
30 <authorgroup>
31 <author>
32 <contrib>Developer</contrib>
33 <firstname>Lennart</firstname>
34 <surname>Poettering</surname>
35 <email>lennart@poettering.net</email>
36 </author>
37 </authorgroup>
38 </refentryinfo>
39
40 <refmeta>
41 <refentrytitle>systemctl</refentrytitle>
42 <manvolnum>1</manvolnum>
43 </refmeta>
44
45 <refnamediv>
46 <refname>systemctl</refname>
47 <refpurpose>Control the systemd system and service manager</refpurpose>
48 </refnamediv>
49
50 <refsynopsisdiv>
51 <cmdsynopsis>
52 <command>systemctl <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="req">COMMAND</arg> <arg choice="opt" rep="repeat">NAME</arg></command>
53 </cmdsynopsis>
54 </refsynopsisdiv>
55
56 <refsect1>
57 <title>Description</title>
58
59 <para><command>systemctl</command> may be used to
60 introspect and control the state of the
61 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
62 system and service manager.</para>
63 </refsect1>
64
65 <refsect1>
66 <title>Options</title>
67
68 <para>The following options are understood:</para>
69
70 <variablelist>
71 <varlistentry>
72 <term><option>--help</option></term>
73 <term><option>-h</option></term>
74
75 <listitem><para>Prints a short help
76 text and exits.</para></listitem>
77 </varlistentry>
78
79 <varlistentry>
80 <term><option>--version</option></term>
81
82 <listitem><para>Prints a short version
83 string and exits.</para></listitem>
84 </varlistentry>
85
86 <varlistentry>
87 <term><option>--type=</option></term>
88 <term><option>-t</option></term>
89
90 <listitem><para>When listing units,
91 limit display to certain unit
92 types. If not specified units of all
93 types will be shown. The argument
94 should be a unit type name such as
95 <option>service</option>,
96 <option>socket</option> and
97 similar.</para></listitem>
98 </varlistentry>
99
100 <varlistentry>
101 <term><option>--property=</option></term>
102 <term><option>-p</option></term>
103
104 <listitem><para>When showing
105 unit/job/manager information, limit
106 display to certain properties as
107 specified as argument. If not
108 specified all set properties are
109 shown. The argument should be a
110 property name, such as
111 <literal>MainPID</literal>. If
112 specified more than once all
113 properties with the specified names
114 are shown.</para></listitem>
115 </varlistentry>
116
117 <varlistentry>
118 <term><option>--all</option></term>
119 <term><option>-a</option></term>
120
121 <listitem><para>When listing units,
122 show all units, regardless of their
123 state, including inactive units. When
124 showing unit/job/manager information,
125 show all properties regardless whether
126 they are set or not.</para></listitem>
127 </varlistentry>
128
129 <varlistentry>
130 <term><option>--failed</option></term>
131
132 <listitem><para>When listing units,
133 show only failed units. Do not confuse
134 with
135 <option>--fail</option>.</para></listitem>
136 </varlistentry>
137
138 <varlistentry>
139 <term><option>--full</option></term>
140
141 <listitem><para>Do not ellipsize unit
142 names and truncate unit descriptions
143 in the output of
144 <command>list-units</command> and
145 <command>list-jobs</command>.</para></listitem>
146 </varlistentry>
147
148 <varlistentry>
149 <term><option>--fail</option></term>
150
151 <listitem><para>If the requested
152 operation conflicts with a pending
153 unfinished job, fail the command. If
154 this is not specified the requested
155 operation will replace the pending job,
156 if necessary. Do not confuse
157 with
158 <option>--failed</option>.</para></listitem>
159 </varlistentry>
160
161 <varlistentry>
162 <term><option>--ignore-dependencies</option></term>
163
164 <listitem><para>When enqueuing a new
165 job ignore all its dependencies and
166 execute it immediately. If passed no
167 required units of the unit passed will
168 be pulled in, and no ordering
169 dependencies will be honoured. This is
170 mostly a debugging and rescue tool for
171 the administrator and should not be
172 used by
173 applications.</para></listitem>
174 </varlistentry>
175
176 <varlistentry>
177 <term><option>--quiet</option></term>
178 <term><option>-q</option></term>
179
180 <listitem><para>Suppress output to
181 STDOUT in
182 <command>snapshot</command>,
183 <command>is-active</command>,
184 <command>enable</command> and
185 <command>disable</command>.</para></listitem>
186 </varlistentry>
187
188 <varlistentry>
189 <term><option>--no-block</option></term>
190
191 <listitem><para>Do not synchronously wait for
192 the requested operation to finish. If this is
193 not specified the job will be verified,
194 enqueued and <command>systemctl</command> will
195 wait until it is completed. By passing this
196 argument it is only verified and
197 enqueued.</para></listitem> </varlistentry>
198
199 <varlistentry>
200 <term><option>--no-pager</option></term>
201
202 <listitem><para>Do not pipe output into a
203 pager.</para></listitem>
204 </varlistentry>
205
206 <varlistentry>
207 <term><option>--system</option></term>
208
209 <listitem><para>Talk to the systemd
210 system manager. (Default)</para></listitem>
211 </varlistentry>
212
213 <varlistentry>
214 <term><option>--user</option></term>
215
216 <listitem><para>Talk to the systemd
217 manager of the calling user.</para></listitem>
218 </varlistentry>
219
220 <varlistentry>
221 <term><option>--order</option></term>
222 <term><option>--require</option></term>
223
224 <listitem><para>When used in
225 conjunction with the
226 <command>dot</command> command (see
227 below), selects which dependencies are
228 shown in the dependency graph. If
229 <option>--order</option> is passed
230 only dependencies of type
231 <varname>After=</varname> or
232 <varname>Before=</varname> are
233 shown. If <option>--require</option>
234 is passed only dependencies of type
235 <varname>Requires=</varname>,
236 <varname>RequiresOverridable=</varname>,
237 <varname>Requisite=</varname>,
238 <varname>RequisiteOverridable=</varname>,
239 <varname>Wants=</varname> and
240 <varname>Conflicts=</varname> are
241 shown. If neither is passed, shows
242 dependencies of all these
243 types.</para></listitem>
244 </varlistentry>
245
246 <varlistentry>
247 <term><option>--no-wall</option></term>
248
249 <listitem><para>Don't send wall
250 message before
251 halt, power-off, reboot.</para></listitem>
252 </varlistentry>
253
254 <varlistentry>
255 <term><option>--global</option></term>
256
257 <listitem><para>When used with
258 <command>enable</command> and
259 <command>disable</command>, operate on the
260 global user configuration
261 directory, thus enabling or disabling
262 a unit file globally for all future
263 logins of all users.</para></listitem>
264 </varlistentry>
265
266 <varlistentry>
267 <term><option>--no-reload</option></term>
268
269 <listitem><para>When used with
270 <command>enable</command> and
271 <command>disable</command>, do not
272 implicitly reload daemon configuration
273 after executing the
274 changes.</para></listitem>
275 </varlistentry>
276
277 <varlistentry>
278 <term><option>--no-ask-password</option></term>
279
280 <listitem><para>When used with
281 <command>start</command> and related
282 commands, disables asking for
283 passwords. Background services may
284 require input of a password or
285 passphrase string, for example to
286 unlock system hard disks or
287 cryptographic certificates. Unless
288 this option is specified and the
289 command is invoked from a terminal
290 <command>systemctl</command> will
291 query the user on the terminal for the
292 necessary secrets. Use this option to
293 switch this behavior off. In this
294 case the password must be supplied by
295 some other means (for example
296 graphical password agents) or the
297 service might fail.</para></listitem>
298 </varlistentry>
299
300 <varlistentry>
301 <term><option>--kill-mode=</option></term>
302
303 <listitem><para>When used with
304 <command>kill</command>, choose the
305 mode how to kill the selected
306 processes. Must be one of
307 <option>control-group</option>,
308 <option>process-group</option> or
309 <option>process</option> to select
310 whether to kill the entire control
311 group, the process group or only the
312 selected process itself. If omitted
313 defaults to
314 <option>control-group</option> if
315 <option>--kill-who=all</option> is
316 set, or <option>process</option>
317 otherwise. You probably never need to
318 use this switch.</para></listitem>
319 </varlistentry>
320
321 <varlistentry>
322 <term><option>--kill-who=</option></term>
323
324 <listitem><para>When used with
325 <command>kill</command>, choose which
326 processes to kill. Must be one of
327 <option>main</option>,
328 <option>control</option> or
329 <option>all</option> to select whether
330 to kill only the main process of the
331 unit, the control process or all
332 processes of the unit. If omitted
333 defaults to
334 <option>all</option>.</para></listitem>
335 </varlistentry>
336
337 <varlistentry>
338 <term><option>--signal=</option></term>
339 <term><option>-s</option></term>
340
341 <listitem><para>When used with
342 <command>kill</command>, choose which
343 signal to send to selected
344 processes. Must be one of the well
345 known signal specifiers such as
346 SIGTERM, SIGINT or SIGSTOP. If
347 omitted defaults to
348 <option>SIGTERM</option>.</para></listitem>
349 </varlistentry>
350
351 <varlistentry>
352 <term><option>--force</option></term>
353 <term><option>-f</option></term>
354
355 <listitem><para>When used with
356 <command>enable</command>, override any
357 existing conflicting
358 symlinks.</para></listitem>
359
360 <listitem><para>When used with
361 <command>halt</command>,
362 <command>poweroff</command>,
363 <command>reboot</command> or
364 <command>kexec</command> execute
365 selected operation without shutting
366 down all units. However, all processes
367 will be killed forcibly and all file
368 systems are unmounted or remounted
369 read-only. This is hence a drastic but
370 relatively safe option to request an
371 immediate reboot.</para></listitem>
372 </varlistentry>
373
374 <varlistentry>
375 <term><option>--defaults</option></term>
376
377 <listitem><para>When used with
378 <command>disable</command>, ensures
379 that only the symlinks created by
380 <command>enable</command> are removed,
381 not all symlinks pointing to the unit
382 file that shall be
383 disabled.</para></listitem>
384 </varlistentry>
385 </variablelist>
386
387 <para>The following commands are understood:</para>
388
389 <variablelist>
390 <varlistentry>
391 <term><command>list-units</command></term>
392
393 <listitem><para>List known units.</para></listitem>
394 </varlistentry>
395 <varlistentry>
396 <term><command>start [NAME...]</command></term>
397
398 <listitem><para>Start (activate) one
399 or more units specified on the command
400 line.</para></listitem>
401 </varlistentry>
402 <varlistentry>
403 <term><command>stop [NAME...]</command></term>
404
405 <listitem><para>Stop (deactivate) one
406 or more units specified on the command
407 line.</para></listitem>
408 </varlistentry>
409 <varlistentry>
410 <term><command>reload [NAME...]</command></term>
411
412 <listitem><para>Asks all units listed
413 on the command line to reload their
414 configuration. Note that this will
415 reload the service-specific
416 configuration, not the unit
417 configuration file of systemd. If you
418 want systemd to reload the
419 configuration file of a unit use the
420 <command>daemon-reload</command>
421 command. In other words: for the
422 example case of Apache, this will
423 reload Apache's
424 <filename>httpd.conf</filename> in the
425 web server, not the
426 <filename>apache.service</filename>
427 systemd unit file. </para>
428
429 <para>This command should not be
430 confused with the
431 <command>daemon-reload</command> or
432 <command>load</command>
433 commands.</para></listitem>
434
435 </varlistentry>
436 <varlistentry>
437 <term><command>restart [NAME...]</command></term>
438
439 <listitem><para>Restart one or more
440 units specified on the command
441 line. If the units are not running yet
442 they will be
443 started.</para></listitem>
444 </varlistentry>
445 <varlistentry>
446 <term><command>try-restart [NAME...]</command></term>
447
448 <listitem><para>Restart one or more
449 units specified on the command
450 line. If the units are not running yet
451 the operation will
452 fail. Note that for compatibility
453 with Red Hat init scripts
454 <command>condrestart</command> is
455 equivalent to this command.</para></listitem>
456 </varlistentry>
457 <varlistentry>
458 <term><command>reload-or-restart [NAME...]</command></term>
459
460 <listitem><para>Reload one or more
461 units if they support it. If not,
462 restart them instead. If the units
463 are not running yet they will be
464 started.</para></listitem>
465 </varlistentry>
466 <varlistentry>
467 <term><command>reload-or-try-restart [NAME...]</command></term>
468
469 <listitem><para>Reload one or more
470 units if they support it. If not,
471 restart them instead. If the units
472 are not running yet the operation
473 will fail. Note that for
474 compatibility with SysV init scripts
475 <command>force-reload</command> is
476 equivalent to this command.</para></listitem>
477 </varlistentry>
478 <varlistentry>
479 <term><command>isolate [NAME]</command></term>
480
481 <listitem><para>Start the unit
482 specified on the command line and its
483 dependencies and stop all others.</para>
484
485 <para>This is similar to changing the
486 runlevel in a traditional init system. The
487 <command>isolate</command> command will
488 immediately stop processes that are not
489 enabled in the new unit, possibly including
490 the graphical environment or terminal you
491 are currently using.</para>
492
493 <para>Note that this works only on units
494 where <option>AllowIsolate=</option> is
495 enabled. See
496 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
497 for details.</para></listitem>
498 </varlistentry>
499 <varlistentry>
500 <term><command>kill [NAME...]</command></term>
501
502 <listitem><para>Send a signal to one
503 or more processes of the unit. Use
504 <option>--kill-who=</option> to select
505 which process to kill. Use
506 <option>--kill-mode=</option> to
507 select the kill mode and
508 <option>--signal=</option> to select
509 the signal to send.</para></listitem>
510 </varlistentry>
511 <varlistentry>
512 <term><command>is-active [NAME...]</command></term>
513
514 <listitem><para>Check whether any of
515 the specified units are active
516 (i.e. running). Returns an exit code
517 0 if at least one is active, non-zero
518 otherwise. Unless
519 <option>--quiet</option> is specified
520 this will also print the current unit
521 state to STDOUT.</para></listitem>
522 </varlistentry>
523 <varlistentry>
524 <term><command>status [NAME...|PID...]</command></term>
525
526 <listitem><para>Show terse runtime
527 status information about one or more
528 units. This function is intended to
529 generate human-readable output. If you
530 are looking for computer-parsable
531 output, use <command>show</command>
532 instead. If a PID is passed
533 information about the unit the process
534 of the PID belongs to is
535 shown.</para></listitem>
536 </varlistentry>
537 <varlistentry>
538 <term><command>show [NAME...|JOB...]</command></term>
539
540 <listitem><para>Show properties of one
541 or more units, jobs or the manager
542 itself. If no argument is specified
543 properties of the manager will be
544 shown. If a unit name is specified
545 properties of the unit is shown, and
546 if a job id is specified properties of
547 the job is shown. By default, empty
548 properties are suppressed. Use
549 <option>--all</option> to show those
550 too. To select specific properties to
551 show use
552 <option>--property=</option>. This
553 command is intended to be used
554 whenever computer-parsable output is
555 required. Use
556 <command>status</command> if you are
557 looking for formatted human-readable
558 output.</para></listitem>
559 </varlistentry>
560
561 <varlistentry>
562 <term><command>reset-failed [NAME...]</command></term>
563
564 <listitem><para>Reset the
565 '<literal>failed</literal>' state of the
566 specified units, or if no unit name is
567 passed of all units. When a unit fails
568 in some way (i.e. process exiting with
569 non-zero error code, terminating
570 abnormally or timing out) it will
571 automatically enter the
572 '<literal>failed</literal>' state and
573 its exit code and status is recorded
574 for introspection by the administrator
575 until the service is restarted or
576 reset with this
577 command.</para></listitem>
578 </varlistentry>
579
580 <varlistentry>
581 <term><command>enable [NAME...]</command></term>
582
583 <listitem><para>Enable one or more
584 unit files, as specified on the
585 command line. This will create a
586 number of symlinks as encoded in the
587 <literal>[Install]</literal> sections
588 of the unit files. After the symlinks
589 have been created the systemd
590 configuration is reloaded (in a way
591 that is equivalent to
592 <command>daemon-reload</command>) to
593 ensure the changes are taken into
594 account immediately. Note that this
595 does not have the effect that any of
596 the units enabled are also started at
597 the same time. If this is desired a
598 separate <command>start</command>
599 command must be invoked for the
600 unit.</para>
601
602 <para>This command will
603 print the actions executed. This
604 output may be suppressed by passing
605 <option>--quiet</option>.</para>
606
607 <para>Note that this operation creates
608 only the suggested symlinks for the
609 units. While this command is the
610 recommended way to manipulate the unit
611 configuration directory, the
612 administrator is free to make
613 additional changes manually, by
614 placing or removing symlinks in the
615 directory. This is particularly useful
616 to create configurations that deviate
617 from the suggested default
618 installation. In this case the
619 administrator must make sure to invoke
620 <command>daemon-reload</command>
621 manually as necessary, to ensure his
622 changes are taken into account.</para>
623
624 <para>Enabling units should not be
625 confused with starting (activating)
626 units, as done by the
627 <command>start</command>
628 command. Enabling and starting units
629 is orthogonal: units may be enabled
630 without being started and started
631 without being enabled. Enabling simply
632 hooks the unit into various suggested
633 places (for example, so that the unit
634 is automatically started on boot or
635 when a particular kind of hardware is
636 plugged in). Starting actually spawns
637 the daemon process (in case of service
638 units), or binds the socket (in case
639 of socket units), and so
640 on.</para>
641
642 <para>Depending on whether
643 <option>--system</option>,
644 <option>--user</option> or
645 <option>--global</option> is specified
646 this enables the unit for the system,
647 for the calling user only
648 or for all future logins of all
649 users. Note that in the latter case no
650 systemd daemon configuration is
651 reloaded.</para>
652 </listitem>
653 </varlistentry>
654
655 <varlistentry>
656 <term><command>disable [NAME...]</command></term>
657
658 <listitem><para>Disables one or more
659 units. This removes all symlinks to
660 the specified unit files from the unit
661 configuration directory, and hence
662 undoes the changes made by
663 <command>enable</command>. Note
664 however that this by default removes
665 all symlinks to the unit files
666 (i.e. including manual additions), not
667 just those actually created by
668 <command>enable</command>. If only the
669 symlinks that are suggested by default
670 shall be removed, pass
671 <option>--defaults</option>. This
672 implicitly reloads the systemd daemon
673 configuration after completing the
674 disabling of the units. Note that this
675 command does not implicitly stop the
676 units that is being disabled. If this
677 is desired an additional
678 <command>stop</command>command should
679 be executed afterwards.</para>
680
681 <para>This command will print the
682 actions executed. This output may be
683 suppressed by passing
684 <option>--quiet</option>.</para>
685 </listitem>
686
687 <para>This command honors
688 <option>--system</option>,
689 <option>--user</option>,
690 <option>--global</option> in a similar
691 way as
692 <command>enable</command>.</para>
693 </varlistentry>
694
695 <varlistentry>
696 <term><command>is-enabled [NAME...]</command></term>
697
698 <listitem><para>Checks whether any of
699 the specified unit files is enabled
700 (as with
701 <command>enable</command>). Returns an
702 exit code of 0 if at least one is
703 enabled, non-zero
704 otherwise.</para></listitem>
705 </varlistentry>
706
707 <varlistentry>
708 <term><command>load [NAME...]</command></term>
709
710 <listitem><para>Load one or more units
711 specified on the command line. This
712 will simply load their configuration
713 from disk, but not start them. To
714 start them you need to use the
715 <command>start</command> command which
716 will implicitly load a unit that has
717 not been loaded yet. Note that systemd
718 garbage collects loaded units that are
719 not active or referenced by an active
720 unit. This means that units loaded
721 this way will usually not stay loaded
722 for long. Also note that this command
723 cannot be used to reload unit
724 configuration. Use the
725 <command>daemon-reload</command>
726 command for that. All in all, this
727 command is of little use except for
728 debugging.</para>
729 <para>This command should not be
730 confused with the
731 <command>daemon-reload</command> or
732 <command>reload</command>
733 commands.</para></listitem>
734 </varlistentry>
735 <varlistentry>
736 <term><command>list-jobs</command></term>
737
738 <listitem><para>List jobs that are in progress.</para></listitem>
739 </varlistentry>
740 <varlistentry>
741 <term><command>cancel [JOB...]</command></term>
742
743 <listitem><para>Cancel one or more
744 jobs specified on the command line by
745 their numeric job
746 IDs. If no job id is specified, cancel all pending jobs.</para></listitem>
747 </varlistentry>
748 <varlistentry>
749 <term><command>monitor</command></term>
750
751 <listitem><para>Monitor unit/job
752 changes. This is mostly useful for
753 debugging purposes and prints a line
754 each time systemd loads or unloads a
755 unit configuration file, or a unit
756 property changes.</para></listitem>
757 </varlistentry>
758 <varlistentry>
759 <term><command>dump</command></term>
760
761 <listitem><para>Dump server
762 status. This will output a (usually
763 very long) human readable manager
764 status dump. Its format is subject to
765 change without notice and should not
766 be parsed by
767 applications.</para></listitem>
768 </varlistentry>
769 <varlistentry>
770 <term><command>dot</command></term>
771
772 <listitem><para>Generate textual
773 dependency graph description in dot
774 format for further processing with the
775 GraphViz
776 <citerefentry><refentrytitle>dot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
777 tool. Use a command line like
778 <command>systemctl dot | dot -Tsvg >
779 systemd.svg</command> to generate a
780 graphical dependency tree. Unless
781 <option>--order</option> or
782 <option>--require</option> is passed
783 the generated graph will show both
784 ordering and requirement
785 dependencies.</para></listitem>
786 </varlistentry>
787 <varlistentry>
788 <term><command>snapshot [NAME]</command></term>
789
790 <listitem><para>Create a snapshot. If
791 a snapshot name is specified, the new
792 snapshot will be named after it. If
793 none is specified an automatic
794 snapshot name is generated. In either
795 case, the snapshot name used is
796 printed to STDOUT, unless
797 <option>--quiet</option> is
798 specified.</para>
799
800 <para>A snapshot refers to a saved
801 state of the systemd manager. It is
802 implemented itself as a unit that is
803 generated dynamically with this
804 command and has dependencies on all
805 units active at the time. At a later
806 time the user may return to this state
807 by using the
808 <command>isolate</command> command on
809 the snapshot unit.</para></listitem>
810
811 <para>Snapshots are only useful for
812 saving and restoring which units are
813 running or are stopped, they do not
814 save/restore any other
815 state. Snapshots are dynamic and lost
816 on reboot.</para>
817 </varlistentry>
818 <varlistentry>
819 <term><command>delete [NAME...]</command></term>
820
821 <listitem><para>Remove a snapshot
822 previously created with
823 <command>snapshot</command>.</para></listitem>
824 </varlistentry>
825 <varlistentry>
826 <term><command>daemon-reload</command></term>
827
828 <listitem><para>Reload systemd manager
829 configuration. This will reload all
830 unit files and recreate the entire
831 dependency tree. While the daemon is
832 reloaded, all sockets systemd listens
833 on on behalf of user configuration will
834 stay accessible.</para> <para>This
835 command should not be confused with
836 the <command>load</command> or
837 <command>reload</command>
838 commands.</para></listitem>
839 </varlistentry>
840 <varlistentry>
841 <term><command>daemon-reexec</command></term>
842
843 <listitem><para>Reexecute the systemd
844 manager. This will serialize the
845 manager state, reexecute the process
846 and deserialize the state again. This
847 command is of little use except for
848 debugging and package
849 upgrades. Sometimes it might be
850 helpful as a heavy-weight
851 <command>daemon-reload</command>. While
852 the daemon is reexecuted all sockets
853 systemd listens on on behalf of user
854 configuration will stay
855 accessible.</para></listitem>
856 </varlistentry>
857 <varlistentry>
858 <term><command>show-environment</command></term>
859
860 <listitem><para>Dump the systemd
861 manager environment block. The
862 environment block will be dumped in
863 straight-forward form suitable for
864 sourcing into a shell script. This
865 environment block will be passed to
866 all processes the manager
867 spawns.</para></listitem>
868 </varlistentry>
869 <varlistentry>
870 <term><command>set-environment [NAME=VALUE...]</command></term>
871
872 <listitem><para>Set one or more
873 systemd manager environment variables,
874 as specified on the command
875 line.</para></listitem>
876 </varlistentry>
877 <varlistentry>
878 <term><command>unset-environment [NAME...]</command></term>
879
880 <listitem><para>Unset one or more
881 systemd manager environment
882 variables. If only a variable name is
883 specified it will be removed
884 regardless of its value. If a variable
885 and a value are specified the variable
886 is only removed if it has the
887 specified value.</para></listitem>
888 </varlistentry>
889 <varlistentry>
890 <term><command>default</command></term>
891
892 <listitem><para>Enter default
893 mode. This is mostly equivalent to
894 <command>start
895 default.target</command>.</para></listitem>
896 </varlistentry>
897 <varlistentry>
898 <term><command>rescue</command></term>
899
900 <listitem><para>Enter rescue
901 mode. This is mostly equivalent to
902 <command>isolate
903 rescue.target</command> but also
904 prints a wall message to all
905 users.</para></listitem>
906 </varlistentry>
907 <varlistentry>
908 <term><command>emergency</command></term>
909
910 <listitem><para>Enter emergency
911 mode. This is mostly equivalent to
912 <command>isolate
913 emergency.target</command> but also
914 prints a wall message to all
915 users.</para></listitem>
916 </varlistentry>
917 <varlistentry>
918 <term><command>halt</command></term>
919
920 <listitem><para>Shut down and halt the
921 system. This is mostly equivalent to
922 <command>start halt.target</command>
923 but also prints a wall message to all
924 users. If
925 combined with <option>--force</option>
926 shutdown of all running services is
927 skipped, however all processes are killed
928 and all file systems are unmounted or
929 mounted read-only, immediately
930 followed by the
931 system halt.</para></listitem>
932 </varlistentry>
933 <varlistentry>
934 <term><command>poweroff</command></term>
935
936 <listitem><para>Shut down and
937 power-off the system. This is mostly
938 equivalent to <command>start
939 poweroff.target</command> but also
940 prints a wall message to all
941 users. If
942 combined with <option>--force</option>
943 shutdown of all running services is
944 skipped, however all processes are killed
945 and all file systems are unmounted or
946 mounted read-only, immediately
947 followed by the
948 powering off.</para></listitem>
949 </varlistentry>
950 <varlistentry>
951 <term><command>reboot</command></term>
952
953 <listitem><para>Shut down and
954 reboot the system. This is mostly
955 equivalent to <command>start
956 reboot.target</command> but also
957 prints a wall message to all
958 users. If
959 combined with <option>--force</option>
960 shutdown of all running services is
961 skipped, however all processes are killed
962 and all file systems are unmounted or
963 mounted read-only, immediately
964 followed by the
965 reboot.</para></listitem>
966 </varlistentry>
967 <varlistentry>
968 <term><command>kexec</command></term>
969
970 <listitem><para>Shut down and reboot
971 the system via kexec. This is mostly
972 equivalent to <command>start
973 kexec.target</command> but also prints
974 a wall message to all users. If
975 combined with <option>--force</option>
976 shutdown of all running services is
977 skipped, however all processes are killed
978 and all file systems are unmounted or
979 mounted read-only, immediately
980 followed by the
981 reboot.</para></listitem>
982 </varlistentry>
983 <varlistentry>
984 <term><command>exit</command></term>
985
986 <listitem><para>Ask the systemd
987 manager to quit. This is only
988 supported for user service managers
989 (i.e. in conjunction with the
990 <option>--user</option> option) and
991 will fail otherwise.</para></listitem>
992 </varlistentry>
993 </variablelist>
994
995 </refsect1>
996
997 <refsect1>
998 <title>Exit status</title>
999
1000 <para>On success 0 is returned, a non-zero failure
1001 code otherwise.</para>
1002 </refsect1>
1003
1004 <refsect1>
1005 <title>See Also</title>
1006 <para>
1007 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
1008 <citerefentry><refentrytitle>systemadm</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
1009 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
1010 <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
1011 <citerefentry><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
1012 </para>
1013 </refsect1>
1014
1015 </refentry>