上一篇
Linux怎么定时关机
- Linux
- 2025-06-17
- 7
Linux系统可通过 shutdown命令设置定时关机,shutdown -h +30 表示30分钟后关机,也可使用crontab 创建计划任务,或在指定时间点用at`命令执行关机操作,实现自动关机管理。
在Linux系统中,定时关机是一项实用功能,适用于服务器维护、节约能源或自动化任务等场景,以下是几种可靠的方法,所有操作均需终端权限(普通用户需在命令前加sudo):
方法1:使用shutdown命令(推荐)
shutdown是Linux内置的安全关机工具,支持精确到分钟的计划任务。
基本语法:

操作示例:
- 30分钟后关机: sudo shutdown -h +30
- 今晚23:00关机: sudo shutdown -h 23:00
取消定时关机:

sudo shutdown -c # 取消计划
方法2:通过cron计划任务(周期性任务)
cron适合每天/每周固定时间关机的场景。
步骤:

- 编辑当前用户的cron表: crontab -e
- 在文件末尾添加一行(以下示例为每天凌晨2点关机): 0 2 * * * /sbin/shutdown -h now
- 时间格式:分钟 小时 日 月 星期
- 命令需用完整路径(通过which shutdown可查看路径)
方法3:使用at命令(单次任务)
at适用于一次性复杂计划(如指定具体日期)。
步骤:
- 启动at交互界面(以下示例为明天22:30关机): echo "shutdown -h now" | at 22:30 tomorrow
- 查看任务队列: atq
- 删除任务(根据atq返回的ID号): atrm [任务ID]
注意事项
- 权限要求:
- 所有命令需root权限(通过sudo或切换至root用户)。
- 数据安全:
关机前确保保存工作,避免数据丢失。
- 时间格式:
- cron和at使用系统时区,确保时间设置正确。
- 替代命令:
- 若shutdown不可用,可用halt或poweroff代替(如sudo poweroff 23:00)。
总结建议
- 临时计划 → 用shutdown
- 周期任务 → 用cron
- 复杂时间 → 用at
引用说明基于Linux核心工具(shutdown/cron/at)的官方文档及Ubuntu、CentOS等主流发行版的最佳实践,技术细节参考《Linux命令行大全》(William Shotts)及Linux Man Pages(可通过man shutdown等命令查看)。