Some common shutdown/restart commands under Linux.
1.shutdown
Shutdown command to safely shut down the system.
It is dangerous for some users to turn Linux off using a direct power-off. Because Linux, unlike Windows, runs many processes in the background, forcing a shutdown can cause data loss to the process, leave the system in an unstable state, or even damage the hardware device in some systems. With the shutdown command before the system shuts down, the system administrator notifies all logged-on users that the system will be closed. And the login command is frozen, that is, the new user can no longer log in. It is possible to shut down directly or delay a certain amount of time before shutting down, and it may be possible to restart the computer. This is determined by all process (process) receiving the signal (signal) the system arrives at. This allows programs like VI to have time to store documents that are currently being edited, while programs like Mail (mail) and news (news) can leave normally and so on.
Shutdown performs its job of sending a signal (signal) to the INIT program, requiring it to change the runlevel. Runlevel 0 is used to stop (halt),runlevel 6 is used to reactivate the (reboot) system, and Runlevel 1 is used to get the system into the state of the management work can be done, this is a preset, assuming that there is no-H and no-R parameter to shutdown. To find out what you did during the (halt) or reboot (reboot), you can see these runlevels related information in this file/etc/inittab.
Shutdown parameter Description:
[-T] tell Init how long it will shut down before changing to another runlevel.
[-R] Restart calculator.
[-K] does not really shut down, just send a warning signal to each login (login).
[-h] turn off the power (halt) after shutting down the machine.
[-n] do not use init, but to shut down the machine. The use of this option is discouraged, and the consequences of this option are often not always what you expect it to be.
[-c] Cancel current process cancels the shutdown program that is currently executing. So this option certainly does not have a time parameter, but you can enter a message to interpret, and this information will be sent to each user.
[-f] ignores fsck when restarting the calculator (reboot).
[-f] forces fsck to restart the calculator (reboot).
[-time] Sets the time before the shutdown (shutdown).
For example:
/sbin/shutdown-h now-----immediately shut down the machine;
/sbin/shutdown-h 20:49----20:49 split off machine
/sbin/shutdown-h +10-----10 minutes after shutting down the machine
/sbin/shutdown-r now--restart immediately
/sbin/shutdown-r +10 ' The system would reboot '----10 minutes later and send notifications to each logged-on user
/sbin/shutdown-k now ' the system would reboot '---notifications are not really shut down for each logged-on user
2.halt--the simplest shutdown command
In fact, halt is called shutdown-h. When the halt executes, the application process is killed, the sync system is called, and the kernel is stopped after the file system write operation is complete.
Parameter description:
[-n] prevents the sync system from being called, it is used after patching the root partition with fsck to prevent the kernel from overwriting the patched super block with the old version of the Super Block (superblock).
[-W] is not a real restart or shutdown, just write Wtmp(/var/log/wtmp) records.
[-d] does not write wtmp record (included in option [-n]).
[-f] does not invoke shutdown and forces shutdown or restart.
[-i] before shutting down (or restarting), turn off all network interfaces.
[-p] This option is the default option. is to call Poweroff when shutting down the machine.
3.reboot
Reboot works almost like halt, but it triggers a host reboot, and Halt is shut down. Its parameters are not much different from the halt.
4.init
Init is the ancestor of all processes, and its process number is always 1, so sending a term signal to init terminates all user processes ﹑ daemons and so on. Shutdown is the use of this mechanism. Init defines 8 runlevel (runlevel), and init 0 is shutdown,init1 reboot. There is no longer a narrative about Init, which can be lengthy. There are also telinit commands that can change the runlevel of Init, such as,telinit-is, which allows the system to enter single-user mode, and does not get information and wait time when using shutdown.
5.poweroff
Shutdown is not recommended in multi-user mode (Runlevel 3).
The difference between Linux Shimonoseki commands (halt,poweroff,reboot,shutdown,init)