Cron Job, Unix tabanlı sistemlerde zamanlanmış görevler oluşturmak ve belirli aralıklarla çalıştırmak için kullanılan bir zamanlayıcıdır. Web sunucularında da yaygın olarak kullanılır ve özellikle rutin işlemlerin otomatikleştirilmesi için tercih edilir. Cron job’lar genellikle yedekleme, veri güncelleme, e-posta gönderme gibi periyodik olarak tekrarlanması gereken görevlerde kullanılır.
Cron Job Nasıl Çalışır?
Cron job, komutları veya komut dosyalarını belirli bir zaman diliminde veya aralıkta çalıştıracak şekilde ayarlayabileceğiniz bir sistemdir. Bu zamanlama, “cron ifadesi” adı verilen özel bir format kullanılarak yapılır. Cron ifadesi, belirli bir görevin ne zaman ve ne sıklıkla çalıştırılacağını belirtir.
Cron İfadesinin Formatı
Cron job’lar aşağıdaki formata göre oluşturulur:
markdown Kodu kopyala* * * * * komut
Buradaki her bir “*” sembolü belirli bir zaman birimini ifade eder:
- Dakika (0 – 59)
- Saat (0 – 23)
- Ayın Günü (1 – 31)
- Ay (1 – 12 veya Jan – Dec)
- Haftanın Günü (0 – 6, Pazar=0, veya Sun – Sat)
- Çalıştırılacak Komut (Belirlediğiniz komut veya script dosyası)
Örnekler:
0 5 * * * komut
– Her gün saat 5:00’te çalışır.*/15 * * * * komut
– Her 15 dakikada bir çalışır.0 0 1 * * komut
– Her ayın 1’inde gece yarısı çalışır.0 12 * * 1 komut
– Her Pazartesi saat 12:00’de çalışır.
Cron Job Oluşturma Adımları
1. Sunucuya Bağlanın
- SSH ile sunucuya bağlanarak komut satırına erişin (örn.
ssh username@sunucu-adresi
).
2. Crontab Düzenleyiciyi Açın
- Cron job oluşturmak veya düzenlemek için aşağıdaki komutu çalıştırarak
crontab
dosyasını açın:bashKodu kopyalacrontab -e
3. Cron İfadesi ile Görev Belirleyin
crontab
dosyasında her satıra yeni bir cron ifadesi ekleyerek komutlarınızı zamanlayabilirsiniz.- Örneğin, her gün saat 3:00’te
/backup.sh
script dosyasını çalıştırmak için:bashKodu kopyala0 3 * * * /path/to/backup.sh
4. Kaydedip Çıkın
- Crontab dosyasına cron job ekledikten sonra dosyayı kaydedin ve çıkın. Genellikle Ctrl + X, Y (Evet) ve Enter tuşlarıyla kaydedebilirsiniz.
5. Cron Job’larınızı Görüntüleyin
- Aktif cron job’larınızı görmek için şu komutu çalıştırabilirsiniz:bashKodu kopyala
crontab -l
6. Cron Loglarını Kontrol Edin
- Cron job’ların doğru çalışıp çalışmadığını kontrol etmek için sistem günlüklerini inceleyebilirsiniz:bashKodu kopyala
tail -f /var/log/syslog | grep cron
cPanel Üzerinden Cron Job Oluşturma
Eğer sunucunuzda cPanel gibi bir kontrol paneli varsa, cron job’ları kolayca ayarlayabilirsiniz:
- cPanel’e Giriş Yapın: Sunucunuzun cPanel yönetim paneline giriş yapın.
- Cron Jobs bölümüne girin: cPanel ana sayfasında “Cron Jobs” seçeneğini bulun ve tıklayın.
- Zamanlayıcıyı Ayarlayın: Cron ifadesine göre zamanlama ayarlarını yapın veya cPanel’in sunduğu hazır seçenekleri (her 5 dakikada bir, günlük, haftalık gibi) kullanın.
- Komut Girin: Çalıştırmak istediğiniz komutu veya script dosyasının yolunu girin.
- Ekleye Tıklayın: Ayarları yaptıktan sonra cron job’u kaydedin.
Örnek Cron Job Komutları
- Otomatik Yedek Alma:bashKodu kopyala
0 2 * * * /backup.sh
Bu cron job, her gün saat 2:00’de/backup.sh
dosyasını çalıştırarak otomatik yedek alır. - Belirli Aralıklarla E-posta Gönderme:bashKodu kopyala
*/30 * * * * /usr/bin/php /home/user/send_email.php
Bu cron job, her 30 dakikada birsend_email.php
PHP dosyasını çalıştırarak e-posta gönderir. - Haftalık Temizlik İşlemi:bashKodu kopyala
0 0 * * 0 /clean_temp.sh
Bu cron job, her Pazar günü gece yarısıclean_temp.sh
dosyasını çalıştırarak geçici dosyaları temizler.