Cron 是类 unix 操作系统中基于时间的作业调度器。用户使用这个实用工具来安排作业 (命令或脚本) 在固定的时间、日期或间隔定期运行。Crontab 是一个配置文件,它指定按给定时间表定期运行的 shell 命令。
在管理 Linux 系统 (尤其是 Ubuntu 和 Debian) 时,了解在哪里可以找到 crontab 日志对于系统管理员和开发人员来说至关重要。
Cron 日志默认位置
Ubuntu 和 Debian 中,Cron Jobs 及其输出通常是由 syslog 守护程序记录,而不是在专用的 cron 日志文件中,日志默认记录到 /var/log/syslog。要查看与 Cron 相关的条目,可以使用 GREP 命令:
grep CRON /var/log/syslog
配置单独的 Cron 日志
为了便于监控,一些管理员更喜欢使用专用的 cron 日志文件。这可以通过配置 rsyslog 服务来实现,该服务负责处理系统日志记录。
(1) 打开 /etc/rsyslog.conf配置文件,注释或者添加以下行:
cron.* /var/log/cron.log
(2) 编辑完成后,重新启动 rsyslog 服务以应用更改
sudo systemctl restart rsyslog
(3) 检查 /var/log/cron.log 是否有 cron 日志出现
查看和理解 Cron 日志
Cron 日志通常包含日期、时间、主机名、Cron 标识符、运行 Cron Job 的用户和执行的命令。
Jul 5 10:00:01 hostname CRON[12345]: (username) CMD (command)
该条目显示 Cron Job 在 7 月 5 日上午 10:00 运行了一条命令。
Cron 故障处理
如果 Cron Job 没有按预期运行,检查 Cron 日志是排除故障的第一步。 Cron 语法错误、权限问题或环境问题通常是故障原因。
其它提示
- 执行命令
sudo systemctl status cron
,确保 cron 服务正常运行。 - 对于详细的故障排除,可以考虑暂时增加日志的篇幅。
- 定期监视和归档日志,以避免磁盘空间问题。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。