Debian 系统的定时器主要分为两类:Systemd 定时器(现代推荐方式)和Cron 定时器(传统方式),两者日志查看方式有所不同。
Systemd 定时器(.timer 文件)的日志由 journald(系统日志服务)统一管理,可通过 journalctl 命令灵活查看:
journalctl --unit=timer
mytimer.timer(如自定义的 mytask.timer),替换名称即可查看其专属日志:journalctl --unit=mytimer.timer
-f 参数可实时查看定时器的最新日志(类似 tail -f):journalctl --unit=mytimer.timer -f
--since 和 --until 指定时间范围(支持自然语言如 today、yesterday):journalctl --unit=mytimer.timer --since="2025-11-01" --until="2025-11-07"
-p err 参数可仅显示错误级别的日志,快速定位问题:journalctl --unit=mytimer.timer -p err
Cron 定时任务(通过 crontab -e 编辑)的日志默认集成到系统日志中,需通过 grep 过滤或配置单独日志文件:
/var/log/syslog 中,使用以下命令提取:grep CRON /var/log/syslog
/var/log/cron.log(需提前配置,见下文),可直接查看:cat /var/log/cron.log
/etc/rsyslog.d/50-default.conf(或 /etc/rsyslog.d/cron.conf),取消以下行的注释(或添加):cron.* /var/log/cron.log
保存后重启 rsyslog 服务使配置生效:sudo systemctl restart rsyslog
之后 Cron 日志将写入 /var/log/cron.log。root 权限,建议在命令前添加 sudo(如 sudo journalctl --unit=mytimer.timer)。/var/log/syslog.1),可使用 zgrep 查看压缩的旧日志(如 zgrep CRON /var/log/syslog.1.gz)。通过上述方法,可根据定时器类型快速定位并分析 Debian 系统中的定时任务日志。