Skip to content Skip to sidebar Skip to footer

Contoh Tugas Penjadwalan Cron di Linux

Pada artikel ini, kita akan meninjau dan melihat bagaimana kita dapat menjadwalkan dan menjalankan tugas di latar belakang secara otomatis secara berkala menggunakan perintah Crontab.


Berurusan dengan pekerjaan yang sering dilakukan secara manual adalah tugas yang menakutkan bagi administrator sistem dan tugas tersebut dapat dijadwalkan dan dijalankan secara otomatis di latar belakang tanpa campur tangan manusia menggunakan cron daemon di Linux atau sistem operasi mirip Unix.


Misalnya, Anda dapat mengotomatiskan pencadangan sistem Linux, menjadwalkan pembaruan, dan sinkronisasi file, dan banyak lagi menggunakan daemon Cron, yang digunakan untuk menjalankan tugas terjadwal dari baris perintah atau menggunakan alat online untuk menghasilkan tugas cron.


Cron bangun setiap menit dan memeriksa tugas jadwal dalam hitungan – Crontab (CRON TABLE) adalah tabel tempat kita dapat menjadwalkan tugas berulang semacam itu.

Tips: Setiap pengguna dapat memiliki crontab sendiri untuk membuat, mengubah, dan menghapus tugas. Secara default cron diaktifkan untuk pengguna, namun, kami dapat membatasi pengguna dengan menambahkan entri di file /etc/cron.deny.


File crontab terdiri dari perintah per baris dan memiliki enam bidang sebenarnya dan dipisahkan antara spasi atau tab. Lima bidang awal mewakili waktu untuk menjalankan tugas dan bidang terakhir adalah untuk perintah.

  • Menit (nilai tahan antara 0-59)
  • Jam (nilai tahan antara 0-23)
  • Hari dalam Bulan (nilai simpan antara 1-31)
  • Bulan dalam setahun (nilai antara 1-12 atau Jan-Des, Anda dapat menggunakan tiga huruf pertama dari nama setiap bulan yaitu Jan atau Jun.)
  • Hari dalam seminggu (nilai antara 0-6 atau Sun-Sat, Di sini Anda juga dapat menggunakan tiga huruf pertama dari nama setiap hari yaitu Sun atau Wed.)
  • Command – /path/to/command atau skrip yang ingin Anda jadwalkan.

1. List Crontab Entries

Daftar atau kelola tugas dengan perintah crontab dengan opsi -l untuk pengguna saat ini.

# crontab -l

00 10 * * * /bin/ls >/ls.txt

2. Edit Crontab Entries

Untuk mengedit entri crontab, gunakan opsi -e seperti yang ditunjukkan di bawah ini. Pada contoh di bawah ini akan membuka jadwal pekerjaan di editor VI. Buat perubahan yang diperlukan dan berhenti menekan tombol :wq yang menyimpan pengaturan secara otomatis.

# crontab -e

3. List Scheduled Cron Jobs

Untuk membuat daftar pekerjaan terjadwal dari pengguna tertentu yang disebut tecmint menggunakan opsi sebagai -u (User/pengguna) and -l (List/Daftar).

# crontab -u tecmint -l

no crontab for tecmint

Note: Hanya pengguna root yang memiliki hak penuh untuk melihat entri crontab pengguna lain. Pengguna normal tidak dapat melihat orang lain.

4. Remove Crontab Entry

Caution- Peringatan: Crontab dengan -r parameter akan menghapus pekerjaan terjadwal lengkap tanpa konfirmasi dari crontab. Gunakan opsi -i sebelum menghapus crontab pengguna.

# crontab -r

5. Prompt Before Deleting Crontab

crontab dengan -i opsi akan meminta Anda konfirmasi dari pengguna sebelum menghapus crontab pengguna.

# crontab -i -r

crontab: really delete root's crontab?

6. Allowed Special Characters (*, -, /, ?, #)

  • Asterisk(*) – Cocokkan semua nilai di bidang atau nilai apa pun yang mungkin.
  • Hyphen(-) – Untuk menentukan jangkauan.
  • Slash (/) – Bidang 1/10 artinya setiap sepuluh menit atau peningkatan jangkauan.
  • The Comma (,) – Untuk memisahkan item.

7. System-Wide Cron Schedule

System administrator dapat menggunakan direktori cron yang telah ditentukan sebelumnya seperti yang ditunjukkan di bawah ini.

  • /etc/cron.d
  • /etc/cron.daily
  • /etc/cron.hourly
  • /etc/cron.monthly
  • /etc/cron.weekly

8. Schedule a Jobs for Specific Time

Pekerjaan di bawah ini menghapus file dan direktori kosong dari /tmp pada pukul 12:30 setiap hari. Anda perlu menyebutkan nama pengguna untuk melakukan perintah crontab. Dalam contoh di bawah ini pengguna root sedang melakukan pekerjaan cron.

# crontab -e

30 0 * * *   root   find /tmp -type f -empty -delete

9. Special Strings for Common Schedule

StringsMaksud
@rebootPerintah akan berjalan ketika sistem reboot.
@dailySekali per hari atau dapat menggunakan @midnight.
@weeklySekali dalam seminggu.
@yearlySekali per tahun. kita juga bisa menggunakan kata kunci @annually.

Perlu mengganti lima bidang perintah cron dengan kata kunci jika Anda ingin menggunakan yang sama.

10. Beberapa Perintah dengan Double ampersand(&&)

Pada contoh di bawah ini, command1 dan command2 dijalankan setiap hari.

# crontab -e

@daily <command1> && <command2>

11. Nonaktifkan Pemberitahuan Email.

Secara default, cron mengirim email ke akun pengguna yang menjalankan cronjob. Jika Anda ingin menonaktifkannya, tambahkan pekerjaan cron Anda seperti contoh di bawah ini. Menggunakan opsi >/dev/null 2>&1 di akhir file akan mengarahkan semua output dari hasil cron di bawah /dev/null.

[root@tecmint ~]# crontab -e
* * * * * >/dev/null 2>&1

Kesimpulan: Otomatisasi tugas dapat membantu kita melakukan tugas dengan cara yang lebih baik, bebas kesalahan, dan efisien. Anda dapat merujuk ke halaman manual crontab untuk informasi lebih lanjut dengan mengetikkan perintah 'man crontab' di terminal Anda.


src: https://www.tecmint.com/11-cron-scheduling-task-examples-in-linux/

Post a Comment for "Contoh Tugas Penjadwalan Cron di Linux"