/sbin/halt with no parameters, e.g.
causes a power off as though -p or the poweroff command was used. This
is because halt execs shutdown which execs "init 0" which runs the
scripts in rc0.d, and the last of those (S01halt) contains a
"halt -i -d -p".
Obviously I can edit S01halt to eliminate the -p. But this makes the
poweroff command equivalent to a halt (no power off occurs).
Is there some way to make halt just halt the machine, and still
have poweroff (or halt -p) shut off power?
Since halt now calls init to switch to runlevel 6, it's
difficult to get arguments passed in the environment
to it. We'll look into patching halt to do this.
Fixed in initscripts-5.10-1, and SysVinit-2.78-8.