Digital Note

Grab a coffe, take a seat, maybe listen to some music and relax by reading our digital daily diary. We want to share our minds and know how with you and the whole world!

Blog phones

Crontab linux

Crontab adalah aplikasi daemon (berjalan dibalik layar) yang digunakan untuk menjalankan tugas yang dijadwalkan pada suatu waktu di sistem operasi linux. Crontab digunakan untuk melakukan penjadwalan, jika di windows sama halnya dengan Task Schedule. crontab sangat berguna untuk melaukan otomatisasi backup, syncronisasi master-slave, dll.

Setiap user di sistem yang memiliki file crontab, mengijinkan file tersebut untuk melakukan suatu aksi yang telah dispesifikasikan sesuai waktu yang telah ditentukan.

Pembuatan crontab harus mengikuti aturan atau format baris perintah

secara umum format crontab:

command to be execute : bisa berupa script satu baris atau menjalankan file executable dengan menuliskan real path.

Contoh

  • 30 05 * * * root rm /var/log/httpd/*
    Setiap pukul 05:30 setiap harinya akan dilakukan oleh user root menghapus file httpd log
  • 10 05 01 * * root /bin/sh /etc/script.sh
    Setiap ¬†pukul 05:01 setiap tanggal 1, setiap bulannya, akan mengeksekusi kumpulan perintah pada file “/etc/script.sh” (yang berupa file shell/bash script)

Secara default crontab sudah terinstall bersamaan dengan Sistem Operasi, tetapi jika ada yang belum terinstall anda dapat melakukan instalasi dengan perintah

sudo apt-get install cron

Untuk melihat schedule yang sedang berjalan di sistem Anda :

sudo crontab -l

Untuk meng-edit ataupun menambah penjadwalan:

sudo crontab -e

 

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/aldo/script.sh

Tapi ada trik penulisan yang lebih gampang, caranya seperti ini :

*/10 * * * * /home/aldo/script.sh

arti dari (*/10) adalah (ngerti lah).
> 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/aldo/script.sh

 

Menyimpan log crontab
Supaya kita bisa memonitor pekerjaan crontab kita, hasil log bisa disimpan dalam file, caranya seperti berikut :

@daily /home/aldo/script.sh 2>&1 >> /home/sigit/log/crontab_schedule.log

atau bisa dikirim ke email (harus install mailx dulu), caranya :

@daily /home/aldo/script.sh 2>&1 | mail -s "Cronjob Log sgt.wibowo@gmail.com

 

Sekian, semoga informasi ini dapat membantu

 

Tags: ,

Trackback from your site.

Leave a comment