init 0 关机时不会保存运行程序或服务,有一定的风险
shutdown命令是系统关机命令。shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作。
-c:取消已经在进行的 shutdown 命令。例如当执行“shutdown -h 11:50”指令时,可以用此选项取消; -f:重新启动时不执行fsck的磁盘检查; -F:重新启动时执行fsck的磁盘检查; -h:将系统的服务停掉后,立即关机; -k:只是送出信息给所有用户,不会实际关机; -n:不调用init程序进行关机,而由shutdown自己进行; -r:在将系统的服务停掉之后就重新启动(常用); -t<秒数>:送出警告信息和删除信息之间要延迟多少秒。
参数
[时间]:设置多久时间后执行shutdown指令;
[警告信息]:要传送给所有登入用户的信息。
命令执行后一分钟后关机
shutdown -h
Shutdown scheduled for Fri 2020-12-25 16:24:12 CST, use 'shutdown -c' to cancel. Broadcast message from root@VM-34-165-centos (Fri 2020-12-25 16:23:12 CST): The system is going down for power-off at Fri 2020-12-25 16:24:12 CST!
立即关机
shutdown -h now
重启
shutdown -r now
指定系统在30分钟后重启,同时送出警告信息给登入用户:
shutdown -r +30 "System will reboot after 30 minutes"
指定系统在5分钟后关机,同时送出警告信息给登入用户:
shutdown -h +5 "System will shutdown after 5 minutes" 或者 shutdown +5 "System will shutdown after 5 minutes"
shutdown - h 时首先会通知当前登陆系统的用户。
结束login.并会杀掉所有进程(有信号SIGTERM),可以让进程更安全的关闭。然后再调用init 0。。
init 0 就直接去执行/etc/rc.d/rc1.d里面的脚本了。
poweroff是halt的符号连接(等于halt -p)halt -p 就是在系统关闭后再关掉电源。
halt -p -f 等于直接拔电
结论:用shutdown 还是比较安全的