Senin, 13 Oktober 2014

Tutorial Menggunakan Crontab di Linux

Crontab adalah aplikasi daemon (berjalan dibalik layar) yang digunakan untuk menjalankan tugas yang dijadwalkan pada suatu waktu di sistem operasi Linux. Misalnya jika kita membuat suatu shell script, dan shell script tersebut perlu dijalankan secara otomatis pada waktu-waktu tertentu, pada contoh kasus inilah penggunaan crontab dapat diimplementasikan.

Berikut merupakan perintah-perintah cron jobs yang dapat digunakan :

  • crontab -e
    • Berfungsi untuk memasukkan/menambah perintah cron jobs
  • crontab -l
    • Berfungsi untuk melihat aktifitas crontab yang sedang berjalan
  • crontab -r
    • Berfungsi untuk menghapus semua perintah cron jobs yang sudah di set


Jadi, untuk membuat crontab buka terminal kemudian ketikkan perintah :





Jika ini pertama kalinya kamu membuat crontab, maka akan muncul opsi berikut :






Di sini saya memilih editor nano[2] karena penggunaanya paling mudah.


Berikut ini adalah format penulisan crontab :

* * * * * /home/gian/contoh.sh

5 bintang (*) diatas merepresentasikan bagian-bagian 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) 

Contoh beberapa crontab :

Eksekusi setiap menit :





Eksekusi setiap hari jam 22.00 :





Eksekusi setiap Jumat jam 15.00 :





Eksekusi setiap 2 jam sekali : (garis miring memiliki arti setiap (x) sekali)





Eksekusi setiap 10 menit sekali :





Eksekusi setiap hari Senin-Jumat jam 20.00 :







Selain itu crontab menyediakan short code atau sejenis shortcut untuk digunakan.

@reboot      Dieksekusi sekali, ketika startup
@yearly      Dieksekusi setaun sekali  "0 0 1 1 *"
@annually  Sama dengan @yearly
@monthly   Dieksekusi sebulan sekali  "0 0 1 * *"
@weekly     Dieksekusi seminggu sekali  "0 0 * * 0"
@daily        Dieksekusi sehari sekali  "0 0 * * *"
@midnight  Sama dengan @daily
@hourly      Dieksekusi setiap jam  "0 * * * *"

Cara memakainya adalah seperti ini :






Untuk mengetahui apakah crontab berjalan seperti seharusnya atau tidak, crontab dapat dibuat log nya menggunakan :




  • Perintah >> berarti isi file contoh.log akan ditambahkan dengan output dari crontab tersebut
  • Perintah 2>&1 berarti melewatkan setiap output dari stderr(2) ke stdout(1), jadi setiap error yang dikeluarkan akan diteruskan menuju standar output. Tanda > sendiri adalah redirection pada suatu file tetapi karena tanda & maka output tersebut diteruskan lagi ke stdout.


Sekian postingan dari saya, semoga bermanfaat :)

Tidak ada komentar:

Posting Komentar