I've a home server I'm playing around with :) I want to learn server administration...
I have a hard time understanding the difference between shutdown -h now and poweroff -h now
My logic tells me it's the same thing...
But with the shutdown, Linux halts, and power stays on - I can see all lights up and cooler rotating. Strange, the only way to turn off my box completely is to use poweroff -h
Any clarification will be appreciated!
1 Answer
The answer is in the poweroff(8) man page:
When called with --force or when in runlevel 0 or 6, this tool invokes the reboot(2) system call itself and directly reboots the system. Otherwise this simply invokes the shutdown(8) tool with the appropriate arguments.
A bit of explanation:
The reboot() system callis the kernel function used to reboot, halt or poweroff the machine. It is called
rebootfor historical reasons, but performs all three functions, depending on parameters that are passed to it.The difference between
haltandpoweroffis that inhaltmode the control is returned to a "ROM monitor" (think BIOS), whereaspoweroffsimply powers the system board off. (I have never seen this distinction in effect on PC architectures; on Sun machines it's different, though.)So, when the
poweroffprogram is invoked when the Linux system is in runlevel 0 or 6, it will immediately power off the system via thereboot(RB_POWEROFF)system call.In any other case,
poweroffwill just behave as an alias forshutdown now.