Perintah crontab Linux digunakan untuk menjadwalkan pekerjaan cron. Pekerjaan cron adalah alat otomatisasi praktis yang memungkinkan pengguna Linux untuk menjalankan tugas otomatis pada periode atau interval tertentu.
Ini adalah cara yang ramah untuk menjadwalkan tugas yang akan membosankan jika dikelola secara manual. Pekerjaan Cron biasanya digunakan oleh administrator sistem untuk mengotomatiskan tugas-tugas seperti pencadangan server, memulai ulang, mengirim pemberitahuan, dan pembersihan.
Pekerjaan cron berjalan tanpa suara di latar belakang, memeriksa /etc/crontab
file dan /var/spool/cron
dan /etc/cron.*/
direktori. Dalam artikel ini, Anda akan mempelajari cara membuat dan mengelola tugas cron di sistem Linux Anda.
Struktur Pekerjaan Linux Cron
Anatomi pekerjaan cron adalah seperti yang ditunjukkan di bawah ini.
* * * * * COMMAND arg1 arg2
ATAU
* * * * * /path/to/script arg1 arg2
Dari kiri,
The 1st entry represents Minutes [0 - 59]
The 2nd entry represents Hours [0 - 24]
The 3rd entry represents Days [0 - 31]
The 4th entry represents Months [0 - 12]
The 5th entry represents Days of the week [0 - 7]
Contoh crontab Linux
Sekarang setelah Anda memiliki kerangka untuk crontab, menulisnya cukup mudah asalkan Anda mengetahui perintah atau jalur ke skrip Anda.
Dalam contoh ini, kita akan membuat crontab untuk me-reboot sistem Linux.
vim reboot.sh
Salin dan tempel konten di bawah ini ke file bash.
#!/bin/bash
0 3 * * * /sbin/reboot
Mengikuti sintaks crontab seperti yang ditunjukkan sebelumnya, tugas cron akan berjalan setiap hari pada pukul 3:00 pagi dan mem-boot ulang sistem.
Simpan dan keluar dari editor teks.
Selanjutnya, tetapkan izin eksekusi seperti yang ditunjukkan.
# chmod +x reboot.sh
Untuk memverifikasi izin file, jalankan:
# ls -l reboot.sh
Untuk menginisialisasi crontab, jalankan
# crontab reboot.sh
Jika Anda ingin melihat konten crontab pengguna yang sedang login, jalankan perintah.
crontab -l
Dengan crontab aktif dan berjalan, crontab akan dieksekusi pada waktu yang ditentukan, yaitu 3:00 pagi waktu setempat.
Untuk menghapus semua tugas cron di sistem, gunakan -r
pilihan.
crontab -r
Contoh tambahan menjalankan tugas cron pada interval waktu tertentu
- Untuk menjalankan tugas cron setiap menit , jalankan
* * * * * COMMAND
Jika waktu saat ini adalah 6:00 pagi, tugas cron akan berjalan pada 06:01, 6:02 dan seterusnya.
- Untuk menjalankan tugas cron setelah setiap menit ke-n , misalnya setelah setiap 10 menit, jalankan
*/10 * * * * COMMAND
- Untuk menjalankan tugas cron setiap menit ke-n setiap jam , misalnya setelah setiap 30 menit setiap jam, jalankan
30 * * * * COMMAND
- Untuk menjalankan tugas cron setiap jam , yaitu setiap 0 menit, jalankan
0 * * * * COMMAND
- Untuk menjalankan tugas cron setelah setiap n jam , misalnya, setelah setiap 6 jam, jalankan
0 */6 * * * COMMAND
- Untuk menjalankan tugas cron pada hari tertentu , katakan Jumat, jalankan
0 0 * * FRI COMMAND
- Jika Anda ingin menjalankan tugas cron dari Senin hingga Jumat jalankan
0 0 * * 1-5 COMMAND
Ini mengeksekusi perintah pada jam 00:00 setiap hari dari Senin sampai Jumat.
- Untuk menjalankan tugas cron setiap hari , jalankan
0 0 * * * COMMAND
- Untuk menjalankan tugas cron setiap hari pertama setiap bulan
0 0 1 * * COMMAND
- Untuk menjalankan tugas cron setiap hari pertama setiap bulan pada waktu tertentu , katakan 20:30 jam, jalankan
30 20 1 * * COMMAND
- Untuk menjalankan pekerjaan setiap kuartal dalam setahun, yaitu hari pertama setelah setiap 3 bulan, jalankan
0 0 1 */3 * COMMAND
- Untuk menjalankan tugas cron setiap tahun , jalankan
0 0 1 1 * COMMAND
Pekerjaan cron ini akan dijalankan setiap hari Jumat tepat pukul 00:00 tengah malam.
Menjadwalkan tugas cron menggunakan Crontab Guru
Sintaks Crontab bisa sangat membingungkan dan sulit untuk dikuasai. Tapi jangan khawatir. Crontab Guru adalah alat online yang sangat ramah yang membantu Anda menentukan interval waktu dengan mulus tanpa banyak kesulitan. Ini adalah antarmuka web yang memiliki interval waktu crontab yang diberi label dengan baik dan semua yang diperlukan adalah Anda mengetikkan angka ke dalam bidang teks saat alat menafsirkan crontab. Pada contoh di bawah, alat tersebut menghasilkan crontab untuk mengotomatiskan tugas cron setiap pukul 6:00 pagi dari Senin hingga Sabtu.