cron 如何运行计划任务、五个 crontab 时间字段、系统 cron 文件的存放位置以及与 systemd 定时器的对比。
cron 是经典的 Unix 守护进程,用于按计划运行命令。每个用户都有一个通过 crontab -e 编辑的 crontab 文件,其中的每一行包含五个时间字段(分、时、日、月、星期),后跟要执行的命令。系统任务位于 /etc/crontab 和 /etc/cron.d/ 中。
'30 2 * * *' 表示每天 02:30;'*/10 * * * *' 表示每十分钟;'0 9 * * 1' 表示每周一 09:00。星期字段中的 0 和 7 都表示星期日。
/etc/cron.d/ 和 /etc/crontab 中的文件在时间和命令之间多了一个字段,即用户名。像 /etc/cron.daily 这样的目录则包含每天运行一次的脚本。
cron 在极简的环境变量下运行:请使用完整路径或在 crontab 中设置 PATH。命令输出会被发送邮件给所有者或被丢弃;请将其重定向到日志文件。% 字符在 crontab 行中具有特殊含义,必须转义为 \%。
在使用 systemd 的发行版中,.timer 单元是一种替代方案,支持将日志记录到 journal、随机延迟以及补运行错过的任务(Persistent=true)。
crontab -e/usr/local/bin/backup.sh >> /var/log/backup.log 2>&1crontab -lcrontab -r' 会直接删除整个 crontab,且不会进行提示。最后更新: 2026-10-08
什么是 systemd 单元、常见的单元类型,以及如何使用 systemctl 启动、停止、启用和检查服务。
logrotate 的作用、/etc/logrotate.conf 和 /etc/logrotate.d 中的配置原理,以及如何安全地测试规则。
如何使用 journalctl 读取日志、检查日志占用的空间大小,并通过 --vacuum 选项安全地缩减日志大小。