DOKK / manpages / debian 11 / sysvinit-core / halt.8.en
HALT(8) Linux System Administrator's Manual HALT(8)

halt, reboot, poweroff - stop the system.

/sbin/halt [-n] [-w] [-d] [-f] [-i] [-p] [-h]
/sbin/reboot [-n] [-w] [-d] [-f] [-i]
/sbin/poweroff [-n] [-w] [-d] [-f] [-i] [-h]

halt notes that the system is being brought down in the file /var/log/wtmp, and then either tells the kernel to halt, reboot or power-off the system.

If halt or reboot is called when the system is not in runlevel 0 or 6, in other words when it's running normally, shutdown will be invoked instead (with the -h or -r flag). For more info see the shutdown(8) manpage.

The rest of this manpage describes the behaviour in runlevels 0 and 6, that is when the systems shutdown scripts are being run.

Don't sync before reboot or halt. Note that the kernel and storage drivers may still sync. This implies -d.
Don't actually reboot or halt but only write the wtmp record (in the /var/log/wtmp file).
Don't write the wtmp record.
Force halt or reboot, don't call shutdown(8).
Shut down all network interfaces just before halt or reboot. Warning: This may not work on interfaces which do not have an IP address and should ideally be handled by a network manager service.
Put all hard drives on the system in stand-by mode just before halt or power-off.
When halting the system, switch off the power. This is the default when halt is called as poweroff.

If you're not the superuser, you will get the message `must be superuser'.

Under older sysvinit releases , reboot and halt should never be called directly. From release 2.74 on halt and reboot invoke shutdown(8) if the system is not in runlevel 0 or 6. This means that if halt or reboot cannot find out the current runlevel (for example, when /var/run/utmp hasn't been initialized correctly and /var/run/runlevel does not exist) shutdown will be called, which might not be what you want. Use the -f flag if you want to do a hard halt or reboot.

The -h flag puts all hard disks in standby mode just before halt or power-off. Right now this is only implemented for IDE drives. A side effect of putting the drive in stand-by mode is that the write cache on the disk is flushed. This is important for IDE drives, since the kernel doesn't flush the write cache itself before power-off.

The halt program uses /proc/ide/hd* to find all IDE disk devices, which means that /proc needs to be mounted when halt or poweroff is called or the -h switch will do nothing.

Miquel van Smoorenburg, miquels@cistron.nl

shutdown(8), init(8)

November 6, 2001