Kamis, 28 Januari 2016

Crontab Scheduler di Ubuntu

Tutorial Penggunaan Crontab Scheduler di Ubuntu

Apa itu cron / crontab ? Crontab adalah aplikasi daemon (berjalan dibalik layar) yang digunakan untuk menjalankan tugas yang dijadwalkan pada suatu waktu di sistem operasi linux. Setiap user di sistem yang memiliki file crontab, mengijinkan file tersebut untuk melakukan suatu aksi yang telah dispesifikasikan sesuai waktu yang telah ditentukan. Crontab biasa digunakan untuk membuat backup secara otomatis, sinkronisasi files, dll.
1. Install crontab
Buat yang belum diinstall crontab-nya, cara install nya adalah :
sudo apt-get install cron
2. Melihat aktifitas crontab
Untuk melihat schedule yang sedang berjalan di sistem Anda :
sudo crontab -l
3. Mengedit cron jobs
sudo crontab -e
editor default dari cron adalah vi atau pico
4. Format penulisan cron 
Format penulisan crontab ditulis dengan format seperti ini :
* * * * * /home/sigit/script.sh
Penjelasan :
5 bintang (*) diatas merepresentasikan bagian2 format tanggal yang berbeda, urutannya sebagai berikut :
1. (* pertama) : menit (isian : 0 – 59)
2. (* kedua) : jam (isian : 0 – 23)
3. (* ketiga) : hari dari bulan / tanggal (isian : 1 – 31)
4. (* keempat) : bulan (isian : 1 – 12)
5. (* kelima) : hari dari minggu (isian : 0 – 6) –> 0 = minggu
Contoh :
Eksekusi setiap menit :
* * * * * php /opt/lampp/htdocs/jobs/test.php
jadwal tersebut akan mengeksekusi perintah php pada setiap menit dari setiap jam, setiap hari, setiap minggu, setiap bulan ::bingung::, pokoknya setiap menit dah.
Eksekusi setiap Sabtu jam 12 siang :
0 12 * * 6 /home/sigit/script.sh
(* pertama) artinya pada menit ke 0, (* kedua) artinya pada jam ke 12, (* ketiga) artinya pada tanggal berapapun, (* keempat) artinya pada setiap bulan, (* kelima) artinya pada setiap hari sabtu (6 = sabtu). (semoga ngga bingung)
Eksekusi pada jam 9 malam setiap hari kerja (Senin – Jumat) :
0 21 * * 1-5 /home/sigit/script.sh
Arinya sama mirip-mirip ama diatas, cuma (* kelima) diisi rentang, yaitu 1-5 (artinya senin-jumat)
> Eksekusi setiap menit ke 30 (setiap jam) pada setiap tanggal 1 (setiap bulan)
30 * 1 * * /home/sigit/script.sh
5. Tips and Trick
> Misalnya kita mau jalanin suatu perintah setiap 10 menit (tiap hari), penulisannya bisa seperti ini :
0,10,20,30,40,50 * * * * /home/sigit/script.sh
Tapi ada trik penulisan yang lebih gampang, caranya seperti ini :
*/10 * * * * /home/sigit/script.sh
arti dari (*/10) adalah (ngerti lah). :D
> kode-kode special
crontab menyediakan kode-kode special untuk digunakan, berikut kodenya :
@reboot     Run once, at startup
@yearly     Run once  a year     "0 0 1 1 *"
@annually   (same as  @yearly)
@monthly    Run once  a month    "0 0 1 * *"
@weekly     Run once  a week     "0 0 * * 0"
@daily      Run once  a day      "0 0 * * *"
@midnight   (same as  @daily)
@hourly     Run once  an hour    "0 * * * *
Cara pemakaian :
@daily /home/sigit/script.sh
6. Menyimpan log crontab
Supaya kita bisa memonitor pekerjaan crontab kita, hasil log bisa disimpan dalam file, caranya seperti berikut :
@daily /home/sigit/script.sh 2>&1 >> /home/sigit/log/crontab_schedule.log
atau bisa dikirim ke email (harus install mailx dulu), caranya :
@daily /home/sigit/script.sh 2>&1 | mail -s "Cronjob Log sgt.wibowo@gmail.com
Itu dulu yang bisa saya tulis, kalo ada pertanyaa, sanggahan, atau penambahan silahkan hubung

Tidak ada komentar:

Posting Komentar