Apa itu crontab?
Cron dinamai 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". Ini memungkinkan untuk menggunakan penjadwal pekerjaan, yang dikenal sebagai cron untuk menjalankan tugas.
Crontab juga merupakan nama program, yang digunakan untuk mengedit jadwal tersebut. Ini didorong oleh file crontab, file konfigurasi yang menunjukkan perintah shell untuk dijalankan secara berkala untuk jadwal tertentu.
Dalam tutorial Sistem Operasi ini, Anda akan mempelajari:
- Apa itu crontab?
- Mengapa menggunakan CRONJOB?
- Bagaimana cara menggunakan cron di Linux?
- Format Linux Crontab
- Bagaimana Menambahkan / Memodifikasi Crontab
- Bagaimana Membuat Daftar Crontab
- Contoh Penting Crontab
Mengapa menggunakan Cronjobs?
Berikut alasan menggunakan Cronjobs di Linux:
- Membantu OS untuk mengambil cadangan file log atau database yang dijadwalkan.
- Hapus file log lama
- Arsipkan dan bersihkan tabel database
- Kirim email pemberitahuan apa pun seperti Buletin, Email kedaluwarsa kata sandi
- Pembersihan reguler data cache
- Crontab adalah pilihan ideal untuk mengotomatiskan pekerjaan Unix.
- Ini digunakan untuk mengotomatiskan pemeliharaan sistem
Bagaimana cara menggunakan cron di Linux?
Paket sistem Linux memiliki penjadwal tugas berguna bernama crontab. Crontab populer karena dapat dijadwalkan untuk menjalankan proses otomatis sebagai root. Oleh karena itu, memiliki proses otomatis yang berjalan sebagai root membuat perubahan sistem lebih mudah. Anda hanya perlu mengubah tugas, lalu menunggu hingga tugas dimulai kembali.
Format Linux Crontab
Crontab Linux memiliki enam kolom. Lima kolom pertama menentukan waktu dan tanggal eksekusi, dan kolom ke-6 digunakan untuk eksekusi perintah.
Sintaks crontab:
[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]
- Astrics (*): Gunakan untuk pencocokan
- Define range: Memungkinkan Anda untuk menentukan rentang dengan bantuan tanda hubung seperti 1-10 atau 30-40 atau jan-mar, sen-wed.
- Define Multiple Range: Memungkinkan Anda untuk menentukan berbagai range dengan perintah yang dipisahkan seperti apr-jun, oct-dec.
Bagaimana Menambahkan / 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 Anda 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
Bagaimana Membuat 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 Penting Crontab
Berikut, beberapa contoh penting Crontab
Deskripsi | Perintah |
Perintah Cron untuk melakukan berbagai pekerjaan penjadwalan. Di bawah ini perintah yang diberikan 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 hari Senin pukul 5 pagi. Perintah ini berguna untuk melakukan tugas mingguan seperti pembersihan sistem. |
0 5 * * mon /scripts/script.sh |
Perintah menjalankan skrip Anda dalam interval 3 menit. |
*/3 * * * * /scripts/monitor.sh |
Perintah untuk menjadwalkan cron yang akan dieksekusi untuk bulan tertentu. Perintah ini untuk menjalankan tugas yang dijalankan pada bulan Feb, Juni dan September. Terkadang kita perlu menjadwalkan tugas untuk menjalankan tugas bulanan tertentu. |
* * * feb,jun,sep * /script/script.sh |
Perintah untuk mengeksekusi pada hari yang dipilih. Contoh ini akan berjalan setiap hari Senin dan Rabu pukul 5 sore. |
0 17 * * mon,wed /script/script.sh |
Perintah ini memungkinkan cron dijalankan pada hari Sabtu pertama setiap bulan. |
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh |
Perintah untuk menjalankan skrip selama interval 6 jam agar dapat dikonfigurasi seperti di bawah ini. |
0 */6 * * * /scripts/script.sh |
Perintah ini menjadwalkan tugas untuk dijalankan dua kali pada hari Senin dan Selasa. Gunakan pengaturan berikut untuk melakukannya. |
0 4,17 * * mon,tue /scripts/script.sh |
Perintah menjadwalkan cron untuk dieksekusi setelah setiap 15 Detik. |
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh |
Perintah untuk menjadwalkan tugas setiap tahun. @yearly timestamp = to "0 0 5 1 *". Ini menjalankan tugas di menit kelima setiap tahun. Anda dapat menggunakannya untuk mengirim salam tahun baru. |
@yearly /scripts/script.sh |
Tugas perintah untuk dijalankan setiap bulan. @ stempel waktu bulanan mirip dengan "0 0 1 * *". Ekspresi perintah ini memungkinkan eksekusi tugas di 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 yang akan dijalankan setiap minggu. @weekly timestamp mirip dengan "0 0 4 * sun". Ini digunakan untuk melakukan tugas mingguan seperti pembersihan sistem, dll. |
@weekly /bin/script.sh |
Tugas akan dijadwalkan untuk dijalankan setiap hari. @ Stempel waktu harian mirip dengan "0 2 * * *". Ini menjalankan tugas di menit kedua setiap hari. |
@daily /scripts/script.sh |
Mengizinkan tugas dijalankan setiap jam. @hourly stempel waktu mirip dengan "0 * * * *". Perintah ini menjalankan tugas di menit pertama setiap jam. |
@hourly /scripts/script.sh |
Mengizinkan tugas dijalankan saat boot ulang sistem. Ekspresi @ reboot berguna untuk tugas-tugas yang ingin dijalankan sistem saat startup sistem Anda. Ini berguna untuk memulai latar belakang tugas secara otomatis. |
@reboot /scripts/script.sh |
Ringkasan:
- Cron dinamai dari kata Yunani "Chronos" yang digunakan untuk waktu.
- Cronjobs membantu OS untuk membuat cadangan file log atau database terjadwal.
- Paket sistem Linux memiliki penjadwal tugas berguna bernama crontab yang dapat dijadwalkan untuk menjalankan proses otomatis sebagai root.
- Crontab Linux memiliki enam kolom. Lima kolom pertama menentukan waktu dan tanggal eksekusi, dan kolom ke-6 digunakan untuk eksekusi perintah.