一、Crontab 安装与配置
- 检查安装状态
bash
# 检查 cron 服务状态 systemctl status cron # 若显示 "Unit cron.service could not be found" 则需安装 sudo apt-get update && sudo apt-get install cron -y
- 启动服务(不同系统版本)
bash
# 旧版系统 /etc/init.d/cron restart # 新版系统 sudo systemctl enable --now cron
二、定时任务配置
- 编辑 Crontab
bash
# 推荐使用 root 权限 sudo crontab -e
- 常用时间格式示例
ini
# 每天凌晨 1 点重启(推荐维护时段) 0 1 * * * /sbin/shutdown -r now # 每 3 小时重启(生产环境慎用) 0 */3 * * * /usr/sbin/reboot # 每周日凌晨 2 点重启 0 2 * * 0 /sbin/reboot
三、Nano 编辑器操作指南
- 保存修改
text
Ctrl+O → Enter 确认保存
- 退出操作
text
Ctrl+X → Y 保存退出 / N 放弃修改
四、验证与调试
- 查看生效任务
bash
sudo crontab -l
- 检查任务日志
bash
grep CRON /var/log/syslog
五、注意事项
- 权限问题
- 普通用户需添加 sudo 权限:
# 在 crontab 任务前追加 */5 * * * * root /sbin/reboot - 安全建议
- 避免高频重启(间隔建议 >24 小时)
- 重要服务配置自动恢复机制
- 生产环境建议通过 Ansible 等运维工具集中管理
- 备选方案
- 使用 systemd timer 实现更精细控制
- 对于 Docker 环境建议重启容器而非宿主机
六、服务管理命令
bash
# 重载配置(修改后必须执行) sudo systemctl restart cron # 彻底停止定时任务 sudo systemctl disable --now cron
