Trên cài đặt mặc định, các job của cron được ghi vào

/var/log/syslog

Bạn chỉ có thể thấy cron job trong logfile đó bằng cách chạy

 grep CRON /var/log/syslog

Nếu bạn chưa cấu hình lại bất kỳ thứ gì, các log của cron sẽ ở trong đó.

Nếu bạn đã cài đặt systemd trên hệ thống của mình, bạn có thể hiển thị log cron bằng cách sử dụng lệnh journalctl.

Ví dụ, trên Ubuntu 20.10 của tôi:

journalctl -u cron.service

Bạn có thể tạo tệp cron.log để chỉ chứa các log CRON. Lưu ý rằng các job CRON sẽ vẫn hiển thị trong syslog nếu bạn làm theo các hướng dẫn sau.

Mở tập tin

/etc/rsyslog.d/50-default.conf

Tìm dòng bắt đầu bằng:

#cron.*

bỏ ghi chú dòng đó, lưu tệp và khởi động lại rsyslog:

sudo service rsyslog restart

Bây giờ bạn sẽ thấy một tệp log cron ở đây:

/var/log/cron.log

Hoạt động của Cron bây giờ sẽ được ghi vào tệp này (ngoài syslog).

Lưu ý rằng trong cron.log, bạn sẽ thấy các mục về thời điểm cron chạy các tập lệnh trong /etc/cron.hourly, cron.daily, v.v. – ví dụ như:

Apr 12 14:17:01 cd CRON[14368]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

Tuy nhiên, bạn sẽ không thấy thêm thông tin về những tập lệnh nào đã thực sự được chạy bên trong /etc/cron.daily hoặc /etc/cron.hourly, trừ khi những tập lệnh đó trực tiếp xuất ra cron.log (hoặc có thể tới một số file log khác).

Nếu bạn muốn xác minh xem crontab có đang chạy hay không và không phải tìm kiếm nó trong cron.log hoặc syslog, hãy tạo một crontab chuyển hướng output đến tệp log mà bạn chọn – giống như:

01 14 * * * /home/khaind/myscript >> /home/log/myscript.log 2>&1

Điều này sẽ chuyển hướng tất cả standard output và các lỗi có thể được tạo ra bởi lệnh được chạy đến file log được chỉ định.

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments