Cách đáng tin cậy duy nhất tôi tìm thấy là kiểm tra nhật ký.
cron
kiểm tra /etc/crontab
mỗi phút và ghi lại một thông báo cho biết rằng nó đã tải lại nó hoặc nó đã tìm thấy một lỗi.
Vì vậy, sau khi chỉnh sửa, hãy chạy này:
sleep 60; grep crontab /var/log/syslog | tail
Hoặc, để không đợi một phút, nhưng chỉ đến phút tiếp theo + 5 giây:
sleep $(( 60 - $(date +%S) + 5 )) && grep cron /var/log/syslog | tail
Ví dụ đầu ra có lỗi:
Jan 9 19:10:57 r530a cron[107258]: Error: bad minute; while reading /etc/crontab
Jan 9 19:10:57 r530a cron[107258]: (*system*) ERROR (Syntax error, this crontab file will be ignored)
Sản lượng tốt:
Jan 9 19:19:01 r530a cron[107258]: (*system*) RELOAD (/etc/crontab)
Đó là trên Debian 8. Trên các hệ thống khác, cron có thể đăng nhập vào một tệp khác.
(Tôi nghĩ rằng tôi có thể tránh việc tìm kiếm tệp nhật ký phù hợp bằng cách sử dụng systemd journalctl -u cron
, nhưng điều đó không cho tôi thấy các mục nhật ký này và thực sự dường như đã dừng đăng nhập các sự kiện cron 2 ngày trước vì một số lý do)