Dalam melakukan administrasi sistem, pengaturan cron dilakukan melalui file crontab, yang berisi jadwal waktu dan script yang harus dieksekusi. System Linux memiliki file crontab default, yaitu /etc/crontab, yang akan menjalankan beberapa script pada waktu yang telah ditentukan, misalnya setiap jam, harian, mingguan, dan bulanan.
Dasar-dasar Crontab
Terdapat dua buah file yang menentukan user mana yang bisa menggunakan crontab: /etc/cron.allow dan /etc/cron.deny. Biasanya, hanya ada file cron.deny pada sistem, dan jika file ini ada, dan terdapat nama user di dalamnya (satu user per baris), maka user tersebut tidak diperbolehkan menggunakan perintah crontab. Jika terdapat file cron.allow, maka hanya user yang namanya terdapat pada file ini yang diperbolehkan menggunakan perintah crontab.
Pada file crontab, terdapat enam field untuk setiap entry, dan masing-masing field dipisahkan oleh spasi atau tab.
- Lima field pertama menentukan kapan perintah akan dijalankan.
- Field ke-enam adalah perintah yang akan dijalankan.
Minute - 0-59.
Hour - 0-23 24-hour format.
Day - 1-31 Day of the month.
Month - 1-12 Month of the year.
Weekday - 0-6 Day of the week. 0 refers to Sunday.
contoh:
# min(0-59) hours(0-23) day(1-31) month(1-12) dow(0-6) command
34 2 * * * sh /root/backup.sh
Pada contoh tersebut, perintah “sh /root/backup.sh” akan dijalankan pada jam 2:34 AM setiap hari.
Tanda bintang pada contoh tersebut berarti ‘semua waktu‘. Tanda bintang pada kolom ‘menit’ berarti “jalankan setiap menit”.
Kita bisa melakukan banyak kombinasi pengaturan waktu. Ada cara lain untuk pengaturan waktu: “20-27″ menunjukkan range; “3,4,7,8″ artinya hanya interval tersebut untuk suatu pilihan, dan */5 artinya setiap interval ke lima. Fitur lainnya, setelah cron menyelesaikan suatu tugas, kita akan mendapatkan email berisi keluaran dari perintah yang dijalankan.
Contoh lainnya
Entry crontab berikut ini akan menjalankan perintah setiap menit ke 15 dan 30 setiap jam, selama bulan Juli:
15,30 * * 7 * /usr/bin/command
Untuk menjalankan script backup setiap Minggu, Senin, dan Selasa pada jam 2:15 AM, gunakan entry berikut:
15 2 * * 0-2 sh /root/backup.sh
Untuk menjalankan script pada menit ke-12 setiap jam ke-3 setiap harinya, gunakan entry berikut:
12 */3 * * * sh /root/script.sh
Agar cron menuliskan keluaran dari suatu perintah ke dalam sebuah file log, anda bisa menambahkan entry berikut:
12 */3 * * * sh /root/script.sh >> /root/script.log 2>&1
Agar anda tidak menerima email dari cron:
12 */3 * * * sh /root/script.sh > /dev/null 2>&1
Beberapa tips dalam menggunakan cron:
- Selalu gunakan path absolut.
- Jika anda tidak yakin apakah tugas-tugas cron telah selesai, periksalah email anda.
- Hapus entry cron yang sudah tidak diperlukan lagi.
- Pastikan crond berjalan.
Perintah-perintah:
crontab -e - Mengedit file crontab yang sudah ada, atau membuat file baru.
crontab -l - Menampilkan isi file crontab.
crontab -r - Menghapus file crontab.
crontab -u - Mengedit crontab milik user.
3 comments:
gan ane mw tny?
*/10 * * * * sh /home/ane/script.sh 2>&1 >> /home/ane/log/crontab_schedule.log
pd script.sh dan crontab_schedule.log apa cma file biasa tw ditambahin script?
trims artikelnya begitu bermanfaat, salam.
thx gan kebetulan lagi mau coba2 crown job neh :)
Post a Comment