Crontab

Crontab
Các tác vụ định thời chạy trên máy chủ với quyền root (giống như “sudo crontab -e”). Từ bảng điều khiển chỉ có thể sửa các tác vụ được thêm ở đây; các dòng khác đã có sẵn trong root-crontab được hiển thị bên dưới chỉ để xem.
Crontab (2)
Lịch Lệnh Mô tả Trạng thái Hành động
0 5 * * * /usr/local/bin/custom-backup.sh >> /var/log/arciveo-cron.log 2>&1 Nightly backup to remote storage
*/15 * * * * /usr/local/bin/healthcheck.sh Ping external uptime monitor
Các tác vụ khác của máy chủ (chỉ xem) (12)
Lệnh
30 1 * * * /usr/local/bin/clamav-scan.sh >> /var/log/arciveo-cron.log 2>&1
0 2 * * * /usr/bin/aide --config /etc/aide/aide.conf --check > /var/log/aide/aide.log 2>&1
@reboot chmod 755 /var/lib/aide
0 3 * * * /usr/local/bin/lynis-scan.sh >> /var/log/arciveo-cron.log 2>&1
0 4 * * * /usr/local/bin/load-ipsum.sh >> /var/log/arciveo-cron.log 2>&1
@reboot sleep 60 && /usr/local/bin/load-ipsum.sh >> /var/log/arciveo-cron.log 2>&1
30 4 * * * /usr/local/bin/debsums-scan.sh >> /var/log/arciveo-cron.log 2>&1
0 6 * * * /usr/local/bin/logwatch_daily.sh >> /var/log/arciveo-cron.log 2>&1
0 8 * * * /usr/local/bin/daily-report-all.sh >> /var/log/arciveo-cron.log 2>&1
*/30 * * * * /usr/local/bin/smart-scan.sh >> /var/log/arciveo-cron.log 2>&1
0 * * * * /usr/bin/apt-get update -qq >/dev/null 2>&1
*/5 * * * * /usr/local/bin/collect-metrics-all.sh >> /var/log/arciveo-cron.log 2>&1
Các dòng đã có sẵn trong root-crontab ngoài khối của bảng điều khiển. “Sao chép vào trình soạn thảo” chỉ điền vào biểu mẫu — dòng gốc không bị xóa, hãy tự xóa nó qua SSH sau khi chuyển.

Giao diện web cho crontab thay vì crontab -e qua SSH

Cron chẳng kể gì về mình. Nó không báo rằng một tác vụ đã hỏng, không cho biết lần chạy gần nhất là khi nào, và một lỗi cú pháp trong năm trường của lịch chạy chẳng có chỗ nào để lộ ra. Về hình thức nó gửi thư cho người dùng cục bộ, nhưng trên máy chủ chưa từng cấu hình thư đi thì bức thư ấy không ai đọc. Một tác vụ có thể hỏng hàng tháng trời, và chỉ hậu quả mới tố cáo nó.

Trang này hiển thị các tác vụ được thêm qua bảng điều khiển: lịch chạy, lệnh, mô tả và trạng thái, kèm khả năng bật, tắt hoặc xóa mà không cần mở terminal. Bên dưới, trong một danh sách riêng, là những dòng còn lại của crontab root, tức những dòng mà bạn hoặc một gói đã cài đặt trước đó đưa vào. Chúng chỉ để đọc: bảng điều khiển cố ý không sửa thứ mà nó không tự viết ra.

Có ba điều đáng kiểm tra ở đây. Tác vụ đưa đầu ra vào /dev/null 2>&1 im lặng như nhau dù đang chạy tốt hay đã hỏng. Lệnh viết bằng tên trần thay vì đường dẫn đầy đủ sẽ hành xử khác với trong shell của bạn, bởi cron có PATH riêng và rất nghèo nàn. Rồi chính lịch chạy: một tác vụ từng tắt đi để gỡ lỗi thường cứ thế nằm tắt. Sau bất kỳ nghi ngờ xâm nhập nào, cron cũng đáng được đọc lại, vì bám trụ qua bộ hẹn giờ dễ hơn qua một unit khởi động, và dòng đó trông hoàn toàn bình thường.