Cron

From SpeedyWiki

Jump to: navigation, search

Cron adalah penjadwal pekerjaan di sistem operasi komputer seperti Unix. "cron" adalah singkatan dari "chronograph".

Cron memungkinkan pengguna untuk menjadwal pekerjaan (perintah atau shell script) untuk berjalan secara otomatis pada waktu atau tanggal tertentu. Hal ini umumnya digunakan untuk melakukan pemeliharaan atau administrasi sistem, meskipun mempunyai tujuan yang bersifat umum, cron dapat digunakan untuk keperluan lain, seperti menghubungkan ke internet dan download email.


Contents

[edit] Tabel cron

Tabel cron biasanya di masukan di bawah folder

/var/spool/cron/crontabs/

Misalnya untuk user root maka file tersebut adalah

/var/spool/cron/crontabs/root

Mengedit tabel cron bisa langsung ke folder / file yang bersangkutan, atau menggunakan perintah

$ crontab -e

dari user yang kita inginkan


[edit] operator / sintaks cron

Ada beberapa cara untuk menentukan waktu

  • koma (',') menentukan daftar nilai, contoh: "1,3,4,7,8" (spasi tidak digunakan dalam sebuah daftar).
  • dash ('-') menentukan sebuah range dari nilai, contoh: "1-6", equivalen dengan "1,2,3,4,5,6"
  • asterisk ('*') menentukan semua nilai yang mungkin. Contoh, asterisk pada kolom jam akan sama dengan setiap jam.
  • slash ('/') biasa di sebut "step", biasa digunakan untuk meloncati nilai tertentu. Contoh: "*/3" dalam jam artinya sama dengan "0,3,6,9,12,15,18,21".

Contoh berikut akan membersihkan Apache error log setiap satu menit melewati tengah malam setiap hari.

1 0 * * *  echo "" > /www/apache/logs/error_log

Contoh slash: script /home/user/test.pl akan di jalankan setiap 5 menit.

*/5 * * * *  /home/user/test.pl

Format secara umum


.---------------- menit (0 - 59) 
|  .------------- jam (0 - 23)
|  |  .---------- hari dalam bulan (1 - 31)
|  |  |  .------- bulan (1 - 12) ATAU jan,feb,mar,apr ... 
|  |  |  |  .---- hari dalam minggu (0 - 6) (Sunday=0 or 7)  ATAU sun,mon,tue,wed,thu,fri,sat 
|  |  |  |  |
*  *  *  *  *  perintah yang dijalankan

Beberapa entry khusus yang mungkin akan berguna


Entry Keterangan Equivalen
@reboot Run satu kali, saat start None
@yearly Run setahun sekali 0 0 1 1 *
@annually (sama dengan @yearly) 0 0 1 1 *
@monthly Run sebulan sekali 0 0 1 * *
@weekly Run seminggu sekali 0 0 * * 0
@daily Run sehari sekali 0 0 * * *
@midnight (sama dengan @daily) 0 0 * * *
@hourly Run setiap jam 0 * * * *


@reboot</code> akan berguna jika user perlu merestart server atau daemon, atau jika user tidak dapat mengakses ke file di bawah /etc/init.d/


[edit] Menjalankan Cron

# start cron
# stop cron
# restart cron

[edit] Pranala Menarik

Personal tools