Linux中使用shutdown、poweroff、halt和reboot命令
对于Linux服务器管理员,深入理解基础命令是确保服务器稳定运行的关键,下面将详细介绍Linux系统中shutdown、poweroff、halt、和reboot命令的区别,并说明每个命令执行时可用的选项参数
注意:若非root用户,执行这些命令需要使用sudo提权操作
1、shutdown
shutdown命令常用于计划性关闭系统,可执行关机、断电和重启系统
基本语法为指定时间参数(通常为 now 或 hh:mm 格式),并可附加广播消息通知所有登录用户
# 常用示例:
shutdown #计划性关机(默认1分钟)
shutdown now #立即关机
shutdown 14:00 #计划14:00关机
shutdown -P now #立即断电
shutdown -h now #立即关机
shutdown -r 08:00 #计划08:00重启系统
取消已计划的关机任务:
shutdown -c #取消已计划的关机任务
2、halt
halt命令用于停止所有CPU功能,多数情况下系统保持通电状态(便于硬件维护)
# 常用示例:
halt #停止系统
halt -p #停止系统并断电
halt --reboot #停止系统并重启
3、poweroff
poweroff命令通过发送ACPI信号直接关闭电源
# 常用示例:
poweroff #立即断电
poweroff --halt #停止系统但不会断电
poweroff --reboot #停止系统并重启
4、reboot
reboot命令用于重启系统
# 常用示例:
reboot #立即重启
reboot --halt #停止系统
reboot -p #停止系统并断电
# 查看shutdown计划性任务
cat /run/systemd/shutdown/scheduled #systemd管理的系统会将定时关机信息写入临时文件,可直接查看其内容,如果没有计划任务,此文件夹下为空
输出信息如下:

USEC=1747333800000000 # 计划关机的Unix时间戳(单位微秒) WARN_WALL=1 # 是否发送广播通知 MODE=poweroff # 关机模式(poweroff表示关机,reboot表示重启)
将Linux时间戳转换为可读时间:先将1747333800000000微秒时间转换为秒(1秒=1000毫秒=1000000微秒),实际为1747333800秒
date -d @1747333800 +"%Y-%m-%d %H:%M:%S" #将Linux时间戳转换为标准时间
如下标准时间为 2025-05-15 18:30:00分执行shutdown关机指令


浙公网安备 33010602011771号