Crontab di Linux: CONTOH Penjadwalan Pekerjaan
Apa itu crontab?
Nama Cron diambil dari kata Yunani “Chronos” yang digunakan untuk waktu. Ini adalah proses sistem yang secara otomatis akan melakukan tugas sesuai jadwal tertentu. Ini adalah sekumpulan perintah yang digunakan untuk menjalankan tugas penjadwalan reguler. Crontab adalah singkatan dari "tabel cron". Hal ini memungkinkan untuk menggunakan penjadwal pekerjaan, yang dikenal sebagai cron untuk menjalankan tugas.
Crontab juga merupakan nama program yang digunakan untuk mengedit jadwal tersebut. Hal ini didorong oleh file crontab, file konfigurasi yang menunjukkan perintah shell untuk dijalankan secara berkala untuk jadwal tertentu.
Mengapa menggunakan Cronjobs?
Berikut alasan menggunakan Cronjobs di Linux:
- Membantu OS untuk mengambil cadangan file log atau database terjadwal.
- Hapus file log lama
- Archive dan bersihkan tabel database
- Kirimkan email pemberitahuan seperti Newsletter, Email kedaluwarsa kata sandi
- Pembersihan rutin data cache
- Crontab adalah pilihan ideal untuk mengotomatisasi pekerjaan Unix.
- Ini digunakan untuk mengotomatisasi pemeliharaan sistem
Bagaimana cara menggunakan cron di Linux?
Sistem Linux paket memiliki penjadwal tugas yang berguna bernama crontab. Crontab populer karena dapat dijadwalkan untuk menjalankan proses otomatis sebagai root. Oleh karena itu, menjalankan proses otomatis sebagai root membuat perubahan sistem menjadi lebih mudah. Anda hanya perlu mengubah tugas lalu menunggu hingga tugas dimulai kembali.
Format Crontab Linux
Crontab Linux memiliki enam bidang. Lima bidang pertama menentukan waktu dan tanggal eksekusi, dan bidang ke-6 digunakan untuk eksekusi perintah.
Sintaks crontab:
[Minute] [hour] [Day_of_the_Month] [Month_of_the_Year] [Day_of_the_Week] [command]
- Astria (*): Gunakan untuk mencocokkan
- Tentukan rentang: Memungkinkan Anda menentukan rentang dengan bantuan tanda hubung seperti 1-10 atau 30-40 atau jan-mar, mon-wed.
- Tentukan beberapa rentang: Memungkinkan Anda untuk menentukan berbagai rentang dengan perintah yang dipisahkan seperti apr-jun,oct-dec.
Cara Menambah/Memodifikasi Crontab
Pengguna dapat mengedit pekerjaan crontab mereka dengan bantuan perintah crontab berikut:
$ crontab -u -e
Perintah di atas akan membuka konfigurasi crontab pribadi sistem komputer Anda, yang dapat diedit dengan menggunakan editor teks default Anda.
Tidak perlu me-restart crontab Anda karena crontab akan mengambil perubahan secara otomatis saat Anda menggunakan perintah berikut.
$ crontab -l
Untuk menghapus tugas crontab Anda, gunakan perintah berikut.
$ crontab -r
Untuk menambah atau memperbarui pekerjaan di crontab, gunakan perintah yang diberikan di bawah ini.
crontab -e
Perintah untuk mengedit crontab pengguna lain
crontab -u username -e
Cara Daftar Crontab
Perintah untuk melihat entri crontab pengguna saat ini
crontab -l
Perintah untuk melihat entri crontab dari pengguna tertentu:
crontab -u username -l
Contoh Crontab Penting
Berikut adalah beberapa contoh penting Crontab
Description | perintah |
---|---|
Perintah cron untuk melakukan berbagai pekerjaan penjadwalan. Perintah yang diberikan di bawah ini dijalankan pada jam 7 pagi dan 5 sore setiap hari. |
0 7,17 * * * /scripts/script.sh |
Perintah untuk mengeksekusi cron setelah setiap 5 menit. |
*/5* * * * * /scripts/script.sh |
Perintah penjadwal cron membantu Anda menjalankan tugas pada setiap tugas Monday pada jam 5 pagi. Perintah ini berguna untuk melakukan tugas mingguan seperti pembersihan sistem. |
0 5 * * mon /scripts/script.sh |
Perintah jalankan skrip Anda dengan interval 3 menit. |
*/3 * * * * /scripts/monitor.sh |
Perintah untuk menjadwalkan cron yang dieksekusi pada bulan tertentu. Perintah ini untuk menjalankan tugas yang dijalankan pada bulan Februari, Juni dan September. Terkadang kita perlu menjadwalkan tugas untuk menjalankan tugas bulanan tertentu. |
* * * feb,jun,sep * /script/script.sh |
Perintah untuk dieksekusi pada hari yang dipilih. Contoh ini akan dijalankan masing-masing Monday dan Rabu pukul 5. |
0 17 * * mon,wed /script/script.sh |
Perintah ini memungkinkan cron untuk dieksekusi pada hari Sabtu pertama setiap bulan. |
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh |
Perintah untuk menjalankan skrip selama interval 6 jam sehingga dapat dikonfigurasi seperti di bawah ini. |
0 */6 * * * /scripts/script.sh |
Perintah ini menjadwalkan tugas untuk dijalankan dua kali Monday dan Selasa. Gunakan pengaturan berikut untuk melakukannya. |
0 4,17 * * mon,tue /scripts/script.sh |
Perintah menjadwalkan cron untuk dieksekusi setiap 15 Detik. |
* * * * * /scripts/script.sh * * * * * sleep 15; /scripts/script.sh |
Perintah untuk menjadwalkan tugas setiap tahun. @cap waktu tahunan adalah= ke “0 0 5 1 *”. Ini menjalankan tugas pada menit kelima setiap tahun. Anda dapat menggunakannya untuk mengirim ucapan selamat tahun baru. |
@yearly /scripts/script.sh |
Perintahkan tugas untuk dijalankan setiap bulan. @cap waktu bulanan mirip dengan “0 0 1 * *”. Ekspresi perintah ini memungkinkan pelaksanaan tugas pada menit pertama setiap bulan. |
@monthly /scripts/script.sh |
Perintah untuk menjalankan banyak tugas menggunakan satu cron. |
* * * * * /scripts/script.sh; /scripts/scrit2.sh |
Perintah untuk menjadwalkan tugas untuk dijalankan setiap minggu. @cap waktu mingguan mirip dengan “0 0 4 * matahari”. Ini digunakan untuk melakukan tugas mingguan seperti pembersihan sistem, dll. |
@weekly /bin/script.sh |
Tugas akan dijadwalkan untuk dijalankan setiap hari. @cap waktu harian mirip dengan “0 2 * * *”. Ia menjalankan tugas pada menit kedua setiap hari. |
@daily /scripts/script.sh |
Mengizinkan tugas dijalankan setiap jam. @cap waktu per jam mirip dengan “0 * * * *”. Perintah ini menjalankan tugas pada menit pertama setiap jam. |
@hourly /scripts/script.sh |
Mengizinkan tugas dijalankan saat reboot sistem. @reboot ekspresi berguna untuk tugas-tugas yang sistem ingin jalankan pada startup sistem Anda. Ini berguna untuk memulai tugas di latar belakang secara otomatis. |
@reboot /scripts/script.sh |
Ringkasan:
- Nama Cron diambil dari kata Yunani “Chronos” yang digunakan untuk waktu.
- Cronjobs membantu OS untuk mengambil cadangan file log atau database terjadwal.
- Paket sistem Linux memiliki penjadwal tugas yang berguna bernama crontab yang dapat dijadwalkan untuk menjalankan proses otomatis sebagai root.
- Crontab Linux memiliki enam bidang. Lima bidang pertama menentukan waktu dan tanggal eksekusi, dan bidang ke-6 digunakan untuk eksekusi perintah.