Crontab: Auto Eksekusi Perintah Linux

In Linux 1312 views

Crontab: Auto Eksekusi Perintah Linux – Apa siy Crontab ?? berdasarkan Wikipedia Crontab adalah :

cron is a time-based job scheduler in Unix-like computer operating systems. cron enables users to schedule jobs (commands or shell scripts) to run periodically at certain times or dates. It is commonly used to automate system maintenance or administration, though its general-purpose nature means that it can be used for other purposes, such as connecting to the Internet and downloading email.

dan arti lainnya adalah :

Cron merupakan sebuah daemon yang menjalankan tugas yang telah dijadwalkan berdasarkan input dari perintah crontab. Cron menyelesaikan tugas ini dengan membangunkan dirinya setiap menit dan memeriksa apakah ada cron-job yang harus dijalankannya berdasarkan crontab user. Dan harus diingat bahwa crontab adalah nama untuk daftar cron-job dan nama dari perintah untuk mengedit daftar tersebut.

 

Perintah dasar Crontab :

# crontab -e     Edit atau membuat file Crontab
# crontab -l     Menampilkan file Crontab
# crontab -r     Menghapus file Crontab

jika ingin melihat manual Crontab dapat menggunakan perintah :

# man Crontab

pada beberapa server ada yang crontab-nya belum terinstall tapi biasanya jarang, jika memang tidak ada lakukan perintah install (centos) :

# yum install crontabs.noarch

 

Format penulisan Crontab :

*******
Blok IBlok IIBlok IIIBlok IVBlok VBlok VIBlok VII
Menunjukkan
Menit
(0-59)
Menunjukkan
Jam
(0-23)
Menunjukkan Tanggal
(1-31)
Menunjukkan Bulan
(1-12)
Menunjukkan Hari
(0-6, 0=minggu)
Menunjukkan User (Optional)Menunjukkan Letak Perintah

Contoh Crontab :

– 30 05 * * * root rm /var/log/httpd/*
Perintah ini menunjukkan bahwa setiap hari pukul 05.30 pagi, perintah “rm /var/log/httpd/*” akan dieksekusi, yang berrati akan menghapus semua file dalam folder /var/log/httpd

– 10 05 01 * * root /bin/sh /etc/script.sh
Perintah ini menunjukkan bahwa setiap tanggal 1 setiap bulannya akan dieksekusi kumpulan perintah pada file “/etc/script.sh”

– 30 0 1 1,6,12 * rm /home/test/*
Perintah ini menunjukkan bahwa setiap tanggal 1 jam 00.30 pada bulan januari, juni, dan desember akan dihapus file /home/test/*

– 0 20 * 10 1-5 /usr/bin/freshclam -l /var/log/clamav/clam-update.log
Perintah ini menunjukkan bahwa setiap tanggal 1, 10, dan 15 setiap bulan tengah malam akan dijalankan script /usr/bin/freshclam dan menyimpan lognya di file /var/log/clamav/clam-update.log

– 5,10 0 10 * 1 rm /tmp/*
Perintah ini menunjukkan bahwa setiap jam 12.05 dan 12.10 hari senin pada tanggal 10 setiap bulan akan menghapus file-file yang ada di direktory tmp.

 

Tambahan :

1. Tanda * menunjukkan bahwa mengeksekusi perintah pada setiap waktu.2. Apabila kita ingin menjadwalkan range pada salah satu bagian blok, maka bisa ditulis sebagai berikut:
Setiap tanggal 1,2,5,9 –>1,2,5,9
Setiap 2 jam –> */2 atau 0-23/23. Untuk blok bulan dan hari bisa ditulis dengan huruf namun hanya harus menggunakan 3 huruf pertama bulan atau hari dan dalam bahasa Inggris.
Contoh untuk bulan: jan,feb
contoh untuk hari : sun,mon4. Blok keenam yang menunjukkan user tidak selalu harus ditulis.5. Kita bisa membuat log hasil eksekusi crontab dengan cara menulisnya di file crontab
contoh:
30 6 * * 1 PATH/dodol.sh > PATH/dodol.log
Perintah ini menunjukkan bahwa setiap jam 06.30 hari senin akan dieksekusi skrip dodol dan lognya akan di tulis di dodol.log
sumber : catatanlepas.com, en.wikipedia.org/wiki/Cron

Related Search

Tags: #PATH

Install Pi-Hole DNS Blokir Iklan dan Tracker
Install Pi-Hole DNS Blokir Iklan dan Tracker
Pi-Hole merupakan salah satu pelindung user internet
Migrasi VPS Panel dari Tuxlite ke VestaCP
Migrasi VPS Panel dari Tuxlite ke VestaCP
Setelah sekian lama menggunakan Tuxlite akhirnya diputuskan
Upgrade PHP 5.6 ke PHP 7.0 Nginx Debian Jessie
Upgrade PHP 5.6 ke PHP 7.0 Nginx Debian Jessie
Sebetulnya sudah agak lama warning untuk upgrade
Mengatasi LetsEncrypt Invalid Response Acme-Challenge
Terkadang pada saat proses renewal Certs Letsencrypt

Top