Cara Mengedit File Crontab Linux Untuk Menjadwalkan Pekerjaan

pengantar

Ada daemon di Linux yang disebut cron yang digunakan untuk menjalankan proses secara berkala.

Cara melakukannya adalah dengan memeriksa folder tertentu di sistem Anda agar skrip dapat berjalan. Misalnya ada folder bernama /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly dan /etc/cron.monthly. Ada juga file bernama / etc / crontab.

Secara default Anda dapat menempatkan skrip ke dalam folder yang relevan untuk membuat mereka menjalankan interval reguler.

Misalnya membuka jendela terminal (dengan menekan CTRL, ALT dan T) dan menjalankan perintah ls berikut:

ls / etc / cron *

Anda akan melihat daftar program atau skrip yang dijalankan setiap jam, harian, mingguan, dan bulanan.

Masalahnya dengan folder ini adalah bahwa mereka agak kabur. Misalnya harian berarti bahwa skrip akan berjalan sekali sehari tetapi Anda tidak memiliki kendali atas waktu yang akan dijalankan skrip selama hari itu.

Itu adalah tempat file crontab masuk.

Dengan mengedit file crontab Anda bisa mendapatkan skrip atau program untuk dijalankan pada tanggal dan waktu yang tepat yang Anda inginkan untuk dijalankan. Misalnya mungkin Anda ingin membuat cadangan file Anda setiap malam pada pukul 6 sore.

Izin

Perintah crontab mengharuskan pengguna memiliki izin untuk mengedit file crontab. Pada dasarnya ada dua file yang digunakan untuk mengelola izin crontab:

Jika file /etc/cron.allow ada maka pengguna yang ingin mengedit file crontab harus ada dalam file itu. Jika file cron.allow tidak ada tetapi ada file /etc/cron.deny maka pengguna tidak boleh ada di file itu.

Jika kedua file itu ada, maka file /etc/cron.allow akan mengesampingkan file /etc/cron.deny.

Jika tidak ada file, maka itu tergantung pada konfigurasi sistem apakah pengguna dapat mengedit crontab.

Pengguna root selalu dapat mengedit file crontab. Anda dapat menggunakan perintah su untuk beralih ke pengguna root atau perintah sudo untuk menjalankan perintah crontab.

Mengedit File Crontab

Setiap pengguna yang memiliki izin dapat membuat file crontab mereka sendiri. Perintah cron pada dasarnya mencari keberadaan beberapa file crontab dan berjalan melalui semuanya.

Untuk memeriksa apakah Anda memiliki file crontab jalankan perintah berikut:

crontab-l

Jika Anda tidak memiliki file crontab, pesan "no crontab for " akan muncul jika file crontab Anda akan ditampilkan (fungsi ini berbeda dari sistem ke sistem, kadang-kadang ia tidak menampilkan apa pun dan waktu lain ditampilkan, " jangan edit file ini ").

Untuk membuat atau mengedit file crontab jalankan perintah berikut:

crontab -e

Secara default jika tidak ada editor default yang dipilih maka Anda akan diminta untuk memilih editor default untuk digunakan. Secara pribadi saya suka menggunakan nano karena cukup lurus ke depan untuk digunakan dan berjalan dari terminal.

File yang terbuka memiliki banyak informasi tetapi bagian kuncinya adalah contoh tepat sebelum akhir bagian komentar (komentar dilambangkan dengan garis yang dimulai dengan #).

Perintah #mh dom mon dow

0 5 * * 1 tar -zcf /var/backups/home.tgz / home /

Ada 6 bagian informasi yang sesuai pada setiap baris file crontab:

Untuk setiap item (kecuali untuk perintah) Anda dapat menentukan karakter wildcard. Lihatlah contoh baris berikut crontab:

30 18 * * * tar -zcf /var/backups/home.tgz / home /

Apa perintah di atas katakan adalah pada 30 menit, 18 jam dan setiap hari, bulan dan hari dalam seminggu menjalankan perintah untuk zip dan tar direktori home ke folder / var / backup.

Untuk mendapatkan perintah untuk dijalankan pada 30 menit melewati setiap jam saya dapat menjalankan perintah berikut:

Perintah 30 * * * *

Untuk mendapatkan perintah untuk menjalankan setiap menit 6 sore, saya dapat menjalankan perintah berikut:

* 18 * * * perintah

Karena itu Anda harus berhati-hati mengatur perintah crontab Anda.

Contohnya:

* * * 1 * perintah

Perintah di atas akan berjalan setiap menit setiap jam setiap hari setiap minggu di bulan Januari. Aku ragu itu yang kamu inginkan.

Untuk menjalankan perintah pada pukul 5 pagi pada tanggal 1 Januari, Anda akan mengikuti perintah berikut ke file crontab:

0 5 1 1 * perintah

Cara Menghapus File Crontab

Sebagian besar waktu Anda tidak ingin menghapus file crontab tetapi Anda mungkin ingin menghapus beberapa baris dari file crontab.

Namun jika Anda ingin menghapus file crontab pengguna Anda jalankan perintah berikut:

crontab -r

Cara yang lebih aman untuk melakukan ini adalah dengan menjalankan perintah berikut:

crontab -i

Ini menanyakan pertanyaan "apakah kamu yakin?" sebelum menghapus file crontab.