Header Menu

Cron Nedir? Temel Bilgiler resim

Cron Nedir? Temel Bilgiler

Cron Nedir? Cron, Unix tabanlı işletim sistemlerinde, belirli aralıklarla otomatik olarak komutları veya betikleri çalıştırmak için kullanılan bir zamanlayıcıdır. Kullanıcıların zamanlanmış görevlerini (cron job) tanımlamalarına ve bunları belirli saatlerde veya aralıklarla çalıştırmalarına olanak tanır. Genellikle sistem bakımı, yedekleme, log dosyalarının temizlenmesi gibi işlemler için kullanılır.

Cron’un Temel Yapısı Cron, bir komut satırı aracıdır ve görevleri zamanlamak için crontab (cron table) adı verilen bir dosya kullanır. Bu dosya, belirli bir zaman diliminde çalışacak komutları belirtir.

Crontab Formatı Crontab dosyasındaki her satır, beş zaman birimi ve ardından çalıştırılacak komutu içerir.

Zaman Birimleri:

  • Dakika (0-59): Hangi dakikada çalıştırılacak.
  • Saat (0-23): Hangi saatte çalıştırılacak.
  • Ayın günü (1-31): Hangi günde çalıştırılacak.
  • Ay (1-12): Hangi ayda çalıştırılacak.
  • Hafta günü (0-7): Hangi haftada çalıştırılacak. 0 ve 7, pazar gününü ifade eder.

Örnekler:

  1. Her dakika bir komut çalıştırmak:

    * * * * * /path/to/script.sh

    Bu, her dakika çalışacak olan bir cron job örneğidir.

  2. Her saat başı çalışacak bir komut:

    0 * * * * /path/to/script.sh

    Bu, her saat başı çalışacak bir komut örneğidir. (Dakika kısmı 0 olduğu için her saat başında çalışır.)

  3. Her gün gece 2’de çalışacak bir komut:

    0 2 * * * /path/to/script.sh

    Bu komut her gün gece saat 2:00'de çalışacaktır.

  4. Her hafta Pazartesi günü sabah 3’te çalışacak bir komut:

    0 3 * * 1 /path/to/script.sh

    Bu, her Pazartesi günü sabah 03:00'te çalışacak bir cron job’dur.

  5. Ayın 1. günü ve 15. günü saat 12:00'de çalışacak bir komut:

    0 12 1,15 * * /path/to/script.sh

    Bu cron job, ayın 1. ve 15. günlerinde saat 12:00'de çalışır.

  6. Her hafta Cuma günü saat 18:30’da çalışacak bir komut:

    30 18 * * 5 /path/to/script.sh

    Bu, her Cuma günü saat 18:30'da çalışacak bir komut örneğidir.

Özel Simgeler (Wildcardlar):

  • *: Herhangi bir değer (yani her dakika, saat, gün, ay vb. için geçerli)
  • ,: Değerler arasında seçim yapmak için kullanılır. Örneğin, 1,15 ayın 1. ve 15. günlerini belirtir.
  • -: Aralık belirtmek için kullanılır. Örneğin, 1-5 Pazartesi'den Cuma'ya kadar olan günleri belirtir.
  • /: Adımları belirtir. Örneğin, */5 her 5 dakikada bir anlamına gelir.

Crontab Dosyasını Düzenleme Bir cron job eklemek için terminalde şu komutla crontab dosyasını açabilirsiniz:

crontab -e

Bu komut, crontab dosyasını düzenlemenizi sağlar. Yaptığınız değişiklikler, kaydedildikten sonra aktif olur.

Crontab Durumunu Görüntüleme Çalışan cron job'ları görüntülemek için:

crontab -l

Cron Job’ları Silme Bir cron job'ı silmek için crontab -e komutuyla dosyayı açıp ilgili satırı silmeniz yeterlidir. Alternatif olarak:

crontab -r

Bu komut, tüm cron job'larını siler.

Sonuç: Cron, görevlerinizi belirli zaman dilimlerinde otomatik olarak çalıştırmanızı sağlar. Sistem bakım işlemleri, yedekleme, raporlama gibi işlemler için oldukça kullanışlıdır.

77 Görüntüleme