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关机指令

 

posted @ 2025-05-15 16:53  凡是過往;皆為序章  阅读(821)  评论(0)    收藏  举报