Linux sunucular, sistemsel görevlerin otomasyonu için güçlü araçlar sunar. Bu araçlardan en yaygını ve etkili olanı cron servisidir. Cron, belirli zaman aralıklarında çalışacak görevleri planlamanıza olanak tanır. Bu görevler sistem yedeklemesinden, log temizliğine, veritabanı güncellemelerinden uygulama kontrollerine kadar geniş bir yelpazeye yayılabilir.
Cronjob Nedir?
Cronjob (veya kısaca “cron”), Unix benzeri sistemlerde çalışan bir zamanlayıcıdır. Kullanıcıların veya sistemin tanımladığı zaman dilimlerinde otomatik olarak belirli komutların çalıştırılmasını sağlar. Görevler crontab
dosyası üzerinden tanımlanır.
Temel Cronjob Söz Dizimi
Bir cronjob şu şekilde tanımlanır:
* * * * * /komut/yolu
│ │ │ │ │
│ │ │ │ └─── Hafta içi günü (0 - 7) (Pazar: 0 veya 7)
│ │ │ └──── Ay (1 - 12)
│ │ └────── Ayın günü (1 - 31)
│ └──────── Saat (0 - 23)
└────────── Dakika (0 - 59)
Örnek Cronjob Görevleri
- Her gece 02:00’de veri yedeklemesi: süratliKopyalaDüzenle
0 2 * * * /usr/bin/rsync -av /var/www /backup/www
- Her 15 dakikada bir servis kontrolü: pgsqlKopyalaDüzenle
*/15 * * * * systemctl is-active nginx || systemctl restart nginx
- Her Pazartesi sabah 6’da log temizliği: pgsqlKopyalaDüzenle
0 6 * * 1 find /var/log -type f -name "*.log" -delete
Cronjob Yönetimi İçin İpuçları
- Görevlerin log’larını takip edin. Örneğin: vuruşKopyalaDüzenle
* * * * * /script.sh >> /var/log/cron.log 2>&1
- Sistemdeki mevcut cron görevlerini listelemek için: nginxKopyalaDüzenle
crontab -l
- Yeni görev eklemek veya düzenlemek için: nginxKopyalaDüzenle
crontab -e
- Sistem görevleri için
/etc/crontab
,/etc/cron.d/
,/etc/cron.daily/
gibi dosyalar kullanılabilir.
Güvenlik ve Performans
- Root olarak çalışan cronjob’lar dikkatle yönetilmelidir.
- Kaynak tüketimi yüksek görevler için işlem zamanını analiz ederek uygun aralıklar belirlenmelidir.
- Uzun süren cron görevleri için zaman aşımı kontrolleri yapılmalıdır.
Sonuç:
Linux tabanlı VPS veya VDS sunucular üzerinde cronjob yönetimi sayesinde manuel işlemleri ortadan kaldırabilir, sistemsel istikrarı ve verimliliği artırabilirsiniz. Otomatik görevler, hem zaman kazandırır hem de hata oranlarını düşürür.