Apa perbedaan utama antara direktori cron.d (seperti dalam /etc/cron.d/
) dan crontab
?
Sejauh yang saya mengerti, seseorang dapat membuat file seperti /etc/cron.d/my_non_crontab_cronjobs
dan meletakkan apa pun yang diinginkan orang di dalamnya, sama seperti orang akan memasukkannya crontab
melalui crontab -e
.
Jadi apa perbedaan utama antara keduanya?
crontab
.Jawaban:
Perbedaan didokumentasikan secara rinci dalam halaman
cron(8)
manual dalam bahasa Debian. Perbedaan utama adalah yang/etc/cron.d
diisi dengan file yang terpisah, sedangkancrontab
mengelola satu file per pengguna; dengan demikian lebih mudah untuk mengelola konten/etc/cron.d
menggunakan skrip (untuk instalasi otomatis dan pembaruan), dan lebih mudah untuk mengelolacrontab
menggunakan editor (untuk pengguna akhir benar-benar).Perbedaan penting lainnya adalah bahwa tidak semua distribusi mendukung
/etc/cron.d
, dan bahwa file dalam/etc/cron.d
harus memenuhi sejumlah persyaratan tertentu (di luar pekerjaan cron yang valid): mereka harus dimiliki oleh root, dan harus sesuai denganrun-parts
'konvensi penamaan ( tidak ada titik , hanya huruf, angka, garis bawah, dan tanda hubung).Jika Anda sedang mempertimbangkan menggunakan
/etc/cron.d
, itu biasanya layak dipertimbangkan salah/etc/cron.hourly
,/etc/cron.daily
,/etc/cron.weekly
, atau/etc/cron.monthly
sebaliknya.sumber
cron.d
biasanya ditambahkan melalui instalasi paket, sedangkan berbagaicrontab
file penuh dengan hal-hal yang dibuat oleh pengguna yang sesuai. IE, paketcertbot
atauletsencrypt
memasukkan entricron.d
- sebelum paket tersedia, sysadmin (root) akan menambahkan entri di pengguna rootcrontab
menunjuk ke skrip shell / etc. untuk menjaga agar sertifikat tetap terbaru.(8)
anacron
.hourly|daily|weekly|monthly
direktori adalah bahwa (AFAICT), mereka selalu berjalan sebagai root, dan tidak secara langsung mendukung berjalan dengan hak istimewa yang lebih rendah.Saya akan mengatakan perbedaan utama adalah yang jelas:
/etc/crontab
dan/etc/cron.d
tidak dapat dimodifikasi oleh pengguna biasa, sedangkan crontab per pengguna di/var/spool/cron
manacrontab
alat diedit, adalah. (Tergantungcron.allow
dancron.deny
, tentu saja.) Tentu saja pada sistem di mana Anda adalah administrator, Anda dapat menggunakan keduanya. Pada sistem bersama, pengguna biasa hanya dapat menggunakannya.Terkait dengan ini adalah bidang tambahan dalam file sistem-lebar, nama pengguna tempat pekerjaan dijalankan.
sumber