<term><command>halt</command></term>
<listitem>
- <para>Shut down and halt the system. This is mostly
- equivalent to <command>start halt.target</command> but also
+ <para>Shut down and halt the system. This is mostly equivalent to
+ <command>start halt.target --irreversible</command> but also
prints a wall message to all users. If combined with
<option>--force</option> shutdown of all running services is
skipped, however all processes are killed and all file
<listitem>
<para>Shut down and power-off the system. This is mostly
- equivalent to <command>start poweroff.target</command> but
- also prints a wall message to all users. If combined with
+ equivalent to <command>start poweroff.target --irreversible</command>
+ but also prints a wall message to all users. If combined with
<option>--force</option> shutdown of all running services is
skipped, however all processes are killed and all file
systems are unmounted or mounted read-only, immediately
<listitem>
<para>Shut down and reboot the system. This is mostly
- equivalent to <command>start reboot.target</command> but
- also prints a wall message to all users. If combined with
+ equivalent to <command>start reboot.target --irreversible</command>
+ but also prints a wall message to all users. If combined with
<option>--force</option> shutdown of all running services is
skipped, however all processes are killed and all file
systems are unmounted or mounted read-only, immediately
<listitem>
<para>Shut down and reboot the system via kexec. This is
- mostly equivalent to <command>start kexec.target</command>
+ mostly equivalent to <command>start kexec.target --irreversible</command>
but also prints a wall message to all users. If combined
with <option>--force</option> shutdown of all running
services is skipped, however all processes are killed and
streq(args[0], "force-reload") ? "ReloadOrTryRestartUnit" :
"StartUnit";
- mode =
- (streq(args[0], "isolate") ||
- streq(args[0], "rescue") ||
- streq(args[0], "emergency") ||
- streq(args[0], "default")) ? "isolate" : arg_job_mode;
+ if (streq(args[0], "isolate") ||
+ streq(args[0], "rescue") ||
+ streq(args[0], "emergency") ||
+ streq(args[0], "default"))
+ mode = "isolate";
+ else if (streq(args[0], "halt") ||
+ streq(args[0], "poweroff") ||
+ streq(args[0], "reboot") ||
+ streq(args[0], "kexec") ||
+ streq(args[0], "exit") ||
+ streq(args[0], "suspend") ||
+ streq(args[0], "hibernate") ||
+ streq(args[0], "hybrid-sleep"))
+ mode = "replace-irreversibly";
+ else
+ mode = arg_job_mode;
one_name = table[verb_to_action(args[0])];
arg_action == ACTION_RUNLEVEL2 ||
arg_action == ACTION_RUNLEVEL3 ||
arg_action == ACTION_RUNLEVEL4 ||
- arg_action == ACTION_RUNLEVEL5) ? "isolate" : "replace";
+ arg_action == ACTION_RUNLEVEL5) ? "isolate" : "replace-irreversibly";
one_name = table[arg_action];
}