Cara Membuat Cron Job di Linux
Otomatisasi tugas itu penting banget buat sysadmin atau developer Linux. Daripada ngulang-ulang skrip manual, kita bisa pakai cron, scheduler berbasis waktu yang menjalankan skrip atau perintah sesuai jadwal. Gini deh, sekali set, tinggal biarin cron jalan, nggak perlu diingat lagi.
Apa Itu Cron Job?
Cron job itu tugas yang dijalankan otomatis di interval tertentu. Daemon cron
di Linux bakal nge-handle semuanya. Gunanya bisa macam-macam:
- Otomatisasi Maintenance: Update, bersihin log, backup.
- Jadwal Laporan: Kirim report rutin.
- Menjalankan Skrip: Eksekusi skrip custom.
Memahami Sintaks Cron
Format dasar cron job di file crontab
:
* * * * * /path/to/command
- - - - -
| | | | |
| | | | +----- Hari dalam minggu (0-7, Minggu=0/7)
| | | +------- Bulan (1-12)
| | +--------- Hari dalam bulan (1-31)
| +----------- Jam (0-23)
+------------- Menit (0-59)
Tiap *
bisa diganti angka atau range buat atur kapan cron jalan.
Cara Membuat Cron Job
1. Buka File Crontab
crontab -e
Buka file crontab user di editor default (vi
atau nano
).
2. Tambah Cron Job Baru
Contoh: jalankan skrip backup setiap hari jam 2:30 AM:
30 2 * * * /path/to/backup.sh
3. Simpan dan Keluar
vi
:Esc
→:wq
→Enter
nano
:Ctrl+X
→Y
→Enter
4. Cek Cron Job
crontab -l
Akan tampil semua cron job user saat ini.
Contoh Cron Job Umum
- Setiap jam:
0 * * * * /path/to/script.sh
- Setiap hari jam 12 malam:
0 0 * * * /path/to/daily-task.sh
- Setiap Senin jam 5 sore:
0 17 * * 1 /path/to/weekly-task.sh
- Tanggal 1 & 15 tiap bulan:
0 0 1,15 * * /path/to/bi-monthly-task.sh
Cron Job Sistem (System-Wide)
File: /etc/crontab
atau /etc/cron.d/
. Butuh root.
Edit /etc/crontab
sudo nano /etc/crontab
Format mirip user crontab, tapi ada field user:
30 2 * * * root /path/to/system-backup.sh
Tambah File di /etc/cron.d/
sudo nano /etc/cron.d/mycronjob
Isi cron job:
30 2 * * * root /path/to/system-maintenance.sh
Simpan, dan cron otomatis load.
Troubleshooting
Kalau cron nggak jalan:
- Cek Permission: Pastikan skrip executable (
chmod +x /path/to/script.sh
). - Cek Log:
/var/log/syslog
atau/var/log/cron
. - Cek Sintaks: Pastikan format cron benar.
Kesimpulan
Cron job itu skill wajib buat otomatisasi tugas di Linux. Dengan memahami sintaks cron dan crontab
, kita bisa scheduling skrip & perintah biar jalan otomatis. Gini deh, pekerjaan repetitive nggak bikin pusing lagi, workflow lebih lancar, dan sistem lebih rapi.