核心关机命令详解
-
shutdown
(最推荐)- 安全特性:默认等待 1 分钟再关机,广播警告信息给所有登录用户,避免数据丢失。
- 常用语法:
sudo shutdown -h now # 立即关机 sudo shutdown -h +10 # 10 分钟后关机 sudo shutdown -h 23:00 # 指定时间关机(今晚 23 点) sudo shutdown -c # 取消计划中的关机
- 适用场景:生产服务器、多用户环境。
-
poweroff
(直接断电)- 作用:立即关闭系统并切断电源(依赖硬件支持)。
- 命令:
sudo poweroff
- 注意:无延迟,强制结束进程,适用于单用户环境或紧急情况。
-
halt
(停止系统运行)- 作用:停止 CPU 工作但不一定断电(需配合参数)。
- 等效命令:
sudo halt -p # -p 表示同时切断电源(同 poweroff) sudo halt # 仅停止系统,可能需手动断电
-
init
与telinit
(系统初始化控制)- 原理:切换运行级别(runlevel):
sudo init 0 # 切换到关机状态(System V 初始化系统) sudo telinit 0 # 同上
- 原理:切换运行级别(runlevel):
Systemd 系统专用命令(现代发行版通用)
主流 Linux 发行版(Ubuntu 16.04+/CentOS 7+)均使用 systemd
,推荐以下操作:
sudo systemctl poweroff # 关机(默认有延迟和通知) sudo systemctl reboot # 重启 sudo systemctl halt # 停止系统 sudo systemctl suspend # 挂起到内存(待机)
关键注意事项
-
权限要求:
所有命令需root
权限,通过sudo
或su -
切换用户执行。su - # 切换 root 后执行命令
-
发行版差异处理:
- 旧版系统(如 CentOS 6)使用
service
命令:sudo service haltsys stop # 部分旧系统兼容
- 若
poweroff
无效,尝试shutdown -P now
。
- 旧版系统(如 CentOS 6)使用
-
安全实践:
- 关机前用
sync
同步磁盘缓存:sudo sync
。 - 检查用户登录:
who
或w
。 - 取消错误关机:快速执行
shutdown -c
。
- 关机前用
命令对比表
命令 | 延迟通知 | 断电 | 适用场景 | 风险等级 |
---|---|---|---|---|
shutdown -h now |
多用户服务器 | 低 | ||
poweroff |
单用户/紧急操作 | 中 | ||
systemctl poweroff |
现代发行版(推荐) | 低 | ||
init 0 |
传统 System V 系统 | 中 |
- 首选方案:
sudo shutdown -h now
或sudo systemctl poweroff
(安全可靠)。 - 避免直接使用:
poweroff
/halt
无参数版(可能导致未保存数据丢失)。 - 强制关机(仅系统卡死时):长按物理电源键(有硬件损坏风险)。
引用说明基于 Linux 手册页(
man shutdown
)、IBM 系统管理文档及 Red Hat/CentOS/Ubuntu 官方最佳实践整理,确保符合 POSIX 标准与主流发行版兼容性。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6543.html