首页 /
教程与测评 /
教程
Linux 定时任务 cron 从入门到不翻车 教程
自动备份、证书续期、数据同步全靠 cron。但 cron 的环境变量和路径坑每年都让无数人凌晨爬起来救火。
语法速记
- 五字段:分 时 日 月 周,*/5 * * * * = 每 5 分钟
- crontab -e 编辑当前用户任务,crontab -l 查看
- 绝对路径原则:cron 的 PATH 只有 /usr/bin,/usr/local/bin 下的命令要写全路径
- 脚本里 cd 到工作目录再执行,别依赖当前目录
三个高频坑
- 环境变量不同:cron 不加载 .bashrc,自定义变量写进脚本或 crontab 行首
- 输出黑洞:不重定向的输出会进 mail 崩积压,统一 >> /var/log/xxx.log 2>&1
- 重叠执行:任务跑超过间隔会叠加,用 flock 锁或拉长间隔
实战:每日备份数据库
- 0 3 * * * mysqldump -uUSER -p'PW' db | gzip > /backup/db-$(date +%F).sql.gz
- 注意 crontab 里 % 要转义成 %,这是最常见的静默失败原因
- 配合 find /backup -mtime +7 -delete 做 7 天轮转
内容基于公开资料与实操经验整理;涉及产品价格与政策以官方为准。需要代劳?建站咨询服务