Cron Job: Pengertian, Fungsi, Syntax Dasar, dan Contohnya

Cron Job: Pengertian, Fungsi, Syntax Dasar, dan Contohnya

Cron job adalah fitur yang ada di dalam operating system (OS) UNIX, Linux dan variasinya untuk otomatisasi perintah di server website. Fitur ini biasanya digunakan oleh administrator dan web developer untuk memudahkan pengelolaan server.

Lalu, sebenarnya apa itu cron job? Pada pembahasan kali ini, Dewaweb telah merangkum semua informasi tentang tools ini termasuk perintah dasar dan sintaksisnya. Simak ulasannya sampai habis, ya!

Baca juga: Mengenal Termux yang Dirancang untuk Sistem Operasi Android

Apa Itu Cron Job?

Supaya lebih mudah memahami materi, sebaiknya kenali ‘cron’ terlebih dahulu. Cron merupakan salah satu fitur yang tersemat pada sistem operasi UNIX untuk menjalankan tugas secara otomatis.

Cron adalah sebuah script atau file teks sederhana yang biasanya dibuat oleh administrator server. Script tersebut berisi perintah yang memungkinkan user untuk menjadwalkan tugas secara berulang.

Jadi, cron job adalah istilah yang mengacu pada penggunaan cron untuk mengotomatisasi tugas tertentu secara berulang kali pada waktu yang telah ditentukan. Misalnya, melakukan backup setiap hari atau seminggu sekali pada jam tertentu.

Baca Juga: Mengenal Apache sebagai Web Server Open Source Gratis

Bagi web developer dan administrator server, fitur cron dimanfaatkan untuk berbagai tujuan, terutama aktivitas yang berkaitan dengan pengelolaan server. Di antaranya:

  • Mengirimkan email newsletter bulanan kepada pengikut;
  • Melakukan backup VPS secara otomatis dengan waktu yang telah ditentukan;
  • Mengecek broken link secara rutin pada waktu tertentu; dan
  • Menghapus cache website setiap satu atau dua minggu.

Sayangnya, dibalik fitur dan kelebihan tersebut, cron juga memiliki beberapa kekurangan yang mungkin perlu kamu pertimbangkan sebelum menggunakannya. Berikut kekurangannya:

  • Belum ada mekanisme percobaan ulang otomatis – Cron job pada dasarnya dirancang untuk tugas terjadwal. Jika terjadi kendala yang mengakibatkan salah satu cron gagal dijalankan, maka tugas tersebut tidak akan aktif hingga waktu cron berikutnya.
  • Terpusat di satu perangkat – Cron job tidak bisa didistribusikan ke perangkat komputer lain meskipun berada di satu jaringan yang sama. Jika perangkatnya mengalami crash, maka cron yang sudah terjadwal akan dilewatkan.
  • Waktu interval tercepat antara dua cron job adalah satu menit – User tidak dapat mengulangi tugas yang sama pada interval tersebut.

Baca Juga: Manfaat dan Fungsi VPS untuk Website Perusahaan Besar

Perintah Dasar Cron Job

Setelah membaca pengertian cron job, kamu juga perlu mengetahui perintah-perintah dasarnya. Penjadwalan cron dilakukan dengan cara menginput perintah ke program shell pada OS Linux atau variasi UNIX lainnya.

Jika belum memiliki VPS hosting, kamu bisa berlangganan di provider terpercaya seperti cloud VPS Dewaweb. Di sini, kamu lebih leluasa memilih basis layanan karena Dewaweb menyediakan cloud server berbasis Linux dan Windows.

Ketika membuka program shell, kamu akan diminta mengetikkan command atau perintah tertentu. Berikut beberapa perintah dasarnya:

  • crontab – Perintah ini digunakan untuk membuat file konfigurasi crontab yang mewakili setiap cron job.
  • crontab -e – Perintah ini digunakan untuk memodifikasi crontab. Jika file cron belum dibuat, perintah crontab -e akan membuat file konfigurasinya secara otomatis.
  • crontab -u – Perintah ini hampir mirip dengan crontab -e, yakni berfungsi untuk memodifikasi crontab. Namun, command crontab -u ini hanya dipakai untuk mengedit crontab milik user lain.
  • crontab -l – Command ini berfungsi untuk membuka dan menampilkan isi file crontab.
  • crontab -r – Command ini digunakan untuk menghapus file crontab.
  • crontab -i – Perintah ini hampir mirip dengan crontab -r, yakni untuk menghapus file crontab. Namun, command crontab -i akan menampilkan pilihan ya/tidak sebelum crontab dihapus.

Baca Juga: 7 Jenis-Jenis VPS untuk Membangun Website Terbaik, Apa Saja?

Syntax Crontab

Sebelum membuat cron job, kamu harus memahami syntax crontab-nya terlebih dahulu. Setiap file crontab terdiri dari lima field yang semuanya harus diisi dan tidak boleh dikosongkan. Berikut lima field pada syntax crontab:

  • Minute – Field ini mewakili menit perintah dijalankan, ditulis dengan angka antara 0-59.
  • Hour – Field ini mewakili jam eksekusi perintah, ditulis dengan angka antara 0-23.
  • Day of the month – Field ini mewakili hari atau tanggal command dijalankan, ditulis dengan angka antara 1-31.
  • Month – Field ini mewakili bulan eksekusi command, ditulis dengan angka antara 1-12.
  • Day of the week – Field ini mewakili hari dalam satu minggu saat command dieksekusi, ditulis dengan angka antara 0-6. Hari dimulai dari Minggu dengan value 0.

Misalnya, kamu ingin menjalankan cron job root/backup.sh setiap hari Rabu jam 7.19, maka script command-nya ditulis seperti ini:

19 7 1 5 3 root/backup.sh

Supaya lebih paham, Dewaweb akan jabarkan masing-masing nilainya. Nilai 19 dan 7 mewakili jam 7.19, nilai 1 dan 5 mewakili Day of the month dan Month, sedangkan nilai 3 mewakili hari Rabu.

Selain angka, syntax crontab juga dapat menggunakan simbol dan huruf tertentu. Berikut simbol dan huruf cron job beserta fungsi penggunaannya:

  • Hash (#) – Simbol ini berfungsi untuk menentukan minggu pelaksanaan command. Terdapat angka antara 1-5 di belakang simbol hash yang mengindikasikan minggu dalam satu bulan. Misalnya, perintah 3#1 merujuk pada hari Rabu di minggu pertama.
  • Slash atau garis miring (/) – Simbol ini berfungsi untuk membagi value dalam sebuah field. Misalnya, kamu ingin command dijalankan setiap 9 jam, maka perintah yang ditulis adalah */9 pada field Hour.
  • Asterisk (*) – Mewakili semua nilai dalam sebuah field. Misalnya, simbol asterisk diletakkan pada field Month, berarti perintah tersebut akan dijalankan setiap bulan.
  • Last (L) – Huruf ini hanya digunakan pada field Day of the month dan Day of the week. Misalnya, kamu ingin command dijalankan di hari Jumat terakhir dalam satu bulan, maka perintah yang ditulis adalah 5L pada field Day of the week.
  • Koma (,) – Simbol ini digunakan untuk memasukkan beberapa nilai dalam sebuah field. Misalnya, kamu ingin menjadwalkan tugas setiap jam 8 dan 15, maka tambahkan simbol koma di antara kedua value-nya pada field Hour.
  • Weekday (W) – Huruf ini digunakan untuk menentukan jadwal tugas pada hari kerja terdekat. Misalnya, tanggal 1 Juli jatuh pada hari Jumat, maka cron bisa dijalankan pada hari Senin tanggal 4 Juli.
  • Hyphen (-) – Simbol ini digunakan untuk menentukan rentang value sebuah field. Misalnya, kamu ingin menjadwalkan tugas setiap hari Kamis sampai Sabtu per minggu, maka tambahkan simbol hyphen pada field Day of the week.
  • Tanda tanya (?) – Simbol ini dipakai untuk memasukkan value kosong (tidak ada nilai) pada field Day of the month dan Day of the week.

Baca Juga: Mengenal Pengertian JSON yang Lebih Sederhana dari XML

Contoh Cron Job

Setelah mengetahui perintah dasar dan sintaksisnya, Dewaweb akan memberikan contoh command cron beserta penjelasannya. Berikut beberapa contohnya:

Command/Perintah Penjelasan
0 18 * * * /root/backup.sh Melakukan backup setiap jam 6 sore setiap hari
0 * * * 4 /root/clearcache.sh Menghapus cache setiap jam di hari Kamis
0 7,15 * * * /root/backup.sh Membackup data dua kali dalam sehari pada jam 7 pagi dan jam 3 sore
*/25 * * * * /scripts/monitor.sh Melakukan monitoring setiap 25 menit
*/30 * * * * /root/backup.sh Membackup data setiap 30 menit
* * * 3,7,11 *  /bin/script.sh Menjalankan script setiap hari pada bulan Maret, Juli, dan November
* * 3L * * /root/script.sh Menjalankan script setiap hari Rabu terakhir pada setiap bulan
* * 17 8 * /root/backup.sh Membackup data setiap menit pada tanggal 17 Agustus
* * 5#3 12 * /root/backup.sh Membackup data setiap hari Jumat di minggu ke-3 setiap bulan Desember
* * * 7,8,9 * /scripts/monitor.sh Melakukan monitoring setiap menit pada bulan Juli, Agustus, dan September
0 10 * * 2-6 /root/clearcache.sh Menghapus cache setiap hari Selasa sampai Sabtu pada jam 10 pagi
0 * * * * /root/backup.sh Membackup data setiap jam
0 0 * * 6 * /root/backup.sh Membackup data setiap hari Sabtu tengah malam

 

Baca Juga: Apa itu VPS Hosting? Fungsi, Kelebihan, dan Tips Memilihnya

Kesimpulan

Itulah informasi yang bisa Dewaweb bagikan seputar cron job. Intinya, cron job adalah sebuah tools pengelolaan server yang digunakan untuk menjalankan perintah secara otomatis. Cukup buat script yang sesuai, kemudian tentukan rincian waktunya.

Kendati cron job dapat memudahkan pengelolaan server, kamu juga perlu memperhatikan server VPS yang digunakan. Sebab, kualitas layanan VPS berpengaruh besar terhadap performa dan keamanan data di dalamnya.

Mengingat hal tersebut, sebaiknya gunakan layanan cloud server VPS terpercaya seperti Dewaweb. Layanan VPS Dewaweb sudah bersertifikat ISO 27001 yang menjamin seluruh data dan infrastruktur cloud terproteksi dengan sistem keamanan kelas dunia.

Selain itu, Dewaweb juga dibekali teknologi server terbaru dari AMD EPYC (Rome) untuk menghasilkan performa super cepat. Yuk, coba Dewaweb sekarang!