Kadangkala terdapat sebahagian tugasan yang berkenaan dengan Linux perlu dilaksanakan pada waktu tertentu ataupun perlu dilaksanakan pada selang masa (interval time) yang tertentu. Sebagai contoh, anda perlu melaksanakan arahan seperti membuat backup database, memadam fail dalam direktori tertentu untuk setiap jam, setiap hari atau pada waktu yang telah ditetapkan.
Secara asasnya, proses ini boleh dilaksanakan secara automatik menggunakan Cronjob yang ditulis di dalam fail Crontab.
APA ITU CRONTAB DAN CRONJOB?
Crontab atau juga singkatan bagi cron table merupakan satu utiliti penjadual dalam Linux atau sistem yang berasaskan UNIX. Ia membolehkan pengguna menjadualkan arahan atau skrip untuk dijalankan pada masa atau tarikh yang tertentu ataupun secara berulang kali.
Cronjob pula merujuk kepada baris tugasan yang telah dijadualkan dan ditulis dalam fail Crontab yang tersimpan pada lokasi /etc/crontab dalam direktori Linux.
BAGAIMANA CRONJOB BERFUNGSI?
Cronjob mengandungi penjadual dan arahan untuk dilaksanakan. Sebelum anda dapat menetapkan Cronjob, anda perlu mengetahui syntax atau cara penulisan Cronjob. Penjadual Cronjob mengandungi 5 item iaitu :
Minit : 0-59
Jam : 0-23
Hari dalam bulan : 1-31
Bulan : 1-12
Hari dalam minggu : 0-6 dimana 0 merujuk kepada hari Ahad dan diakhiri dengan 6 yang merujuk kepada hari Sabtu
Anda juga boleh menggunakan beberapa operator untuk membolehkan anda membuat penjadualan yang lebih terperinci. Sebagai contoh :
* : Merujuk kepada semua nilai yang terdapat dalam item tersebut atau dalam bahasa mudah ia akan dilaksanakan secara berulang kali.
- : Julat masa. Contohnya 1-30 pada item minit bermaksud Cronjob akan dijalankan pada minit 1-30 sahaja
/ : Pembahagi jumlah. Contohnya */2 pada item jam merujuk kepada setiap 2 jam
, : Untuk menetapkan beberapa nilai. Contohnya 1,5 pada item hari dalam minggu bermaksud hari setiap hari Isnin dan Jumaat
CONTOH PENGGUNAAN CRONJOB
Contoh penggunaan Cronjob adalah seperti berikut:
Perlaksanaan sesuatu skrip arahan setiap minit
* * * * * /home/inframesia/skrip-arahan.shPerlaksanaan sesuatu skrip arahan pada setiap hari jam 3.30 pagi
30 3 * * * /home/inframesia/skrip-arahan.shPerlaksanaan sesuatu skrip arahan pada 31 Ogos jam 2.00 petang
0 14 31 8 * /home/inframesia/skrip-arahan.shPerlaksanaan sesuatu arahan skrip pada setiap 0 hingga minit ke 5, jam 1 pagi dan 3 petang pada 1 haribulan bagis setiap 2 bulan.
0-5 1,15 1 */2 * /home/inframesia/skrip-arahan.sh
Untuk makluman anda, selang masa yang paling singkat adalah setiap 1 minit. Jika sebarang tugasan yang telah dijadualkan, gagal untuk dijalankan pada waktu yang telah ditetapkan, ia tidak akan dicuba semula secara automatik, sehinggalah tiba waktu selang masa yang berikutnya.
Anda boleh memantau perlaksanaan cronjob menggunakan alat pemantau seperti Cronitor, Healthchecks, Cronhub, Cronboard, Uptime Robot ataupun Uptime Kuma. Untuk membantu anda mencipta syntax penjadual Cronjob dengan mudah, anda boleh gunakan cron syntax generater di https://crontab.guru
Follow media sosial Inframesia di :
Facebook : https://www.facebook.com/inframesia
Instagram : https://www.instagram.com/infra.mesia/
Threads : https://www.threads.net/@infra.mesia
X : https://twitter.com/inframesia
LinkedIn : https://www.linkedin.com/company/inframesia
TikTok : https://www.tiktok.com/@inframesia
Youtube : https://www.youtube.com/@inframesia