为何要使用命令进行关机重启?
linux系统中的各个进程携带着各种数据,强制关机会照成数据混乱而丢失数据,甚至可能损坏硬件,所以我们需要更加安全的关机和重启方式
关机重启相关命令,需要root用户才能执行,或者被root用户授权执行
关机重启命令
1. shotdown
以广播形式通知正在系统工作的所有用户,系统将在指定的时间内关闭,请保存文件,停止作业,注销用户。
过程:
冻结login指令,新的用户不能登录,当所有用户从系统中注销或者到达指定时间,shoutdown发信号给init程序,要求init程序改变系统运行级别
重启执行 init 6 关机执行 init 0
相关参数
-f 重启不执行fsck
-h 系统关机
-k 发信息给所有用户,并不真正关机
-r 关机重启系统
-c 取消前一个shutdown命令
-t 关机信息发送前多少秒发送警告信息
[时间] 格式 h:m 24小时制, +m 多发分钟后, now 立即执行,该参数不能省略
[警告信息] 发送给当前登录的用户消息
2. halt
相当于 shutdown -h 命令
过程
终止所有应用程序,然后调用系统指令sync将所有内存信息通过文件系统写入磁盘,然后停止内核
相关参数
-f 不调用shutdown强制关机
-i 关机前,关掉所有网络接口
-n 不调用系统指令sync
-p 关机同时关闭电源,默认参数
3. reboot
关机过程和halt类似,多了个系统重启
4. init
立即切换系统不同的运行级别
0 关机
1 单用户,用于排除系统级别故障
2 多用户,无NFS
3 多用户,有NFS,默认
4 未使用
5 桌面GUI
6 重启系统