Linux'ta Cron İşleri Nasıl Oluşturulur ve Yönetilir


Cron, Linux'un en kullanışlı araçlarından biridir ve geliştiricilerin favorisidir çünkü hem genel amaçlı hem de göreve özel komut dosyalarını kullanarak belirli dönemlerde, tarihlerde ve aralıklarla otomatik komutlar çalıştırmanıza olanak tanır. Bu açıklama göz önüne alındığında, sistem yöneticilerinin bunu yedekleme görevlerini, dizin temizlemeyi, bildirimleri vb. otomatikleştirmek için nasıl kullandığını hayal edebilirsiniz.

Cron işleri arka planda çalışır ve sürekli olarak /etc/crontab dosyasını, /etc/cron.*/ ve /var/spool/cron/ dosyasını kontrol eder. dizinleri. Cron dosyalarının doğrudan düzenlenmesi gerekmez ve her kullanıcının benzersiz bir crontab'ı vardır.

O halde cron işlerini nasıl oluşturup düzenleyeceksiniz? Crontab komutlarıyla. Crontab, cron işlerini oluşturmak, düzenlemek, yüklemek, kaldırmak ve listelemek için kullandığınız yöntemdir.

Cron işlerini oluşturma ve düzenleme komutu aynı ve basittir. Daha da güzeli, yeni dosyalar oluşturduktan veya mevcut dosyaları düzenledikten sonra cron'u yeniden başlatmanıza gerek olmamasıdır.


crontab -e

Cron Söz Dizimi

Her dilde olduğu gibi, sözdizimini anladığınızda cron ile çalışmak çok daha kolaydır ve bilmeniz gereken 2 biçim vardır:


A B C D E USERNAME /path/to/command arg1 arg2
OR
A B C D E USERNAME /root/backup.sh

Yukarıdaki cron sözdiziminin açıklaması:

  • A: Dakika aralığı: 0 – 59
  • B: Saat aralığı: 0 – 23
  • C: Gün aralığı: 0 – 31
  • D: Ay aralığı: 0 – 12
  • E: Haftanın günleri aralığı: 0 – 7. Pazartesi'den başlayarak 0 veya 7 Pazar'ı temsil eder
  • USERNAME: bunu kullanıcı adınızla değiştirin
  • /path/to/command – Planlamak istediğiniz komut dosyasının veya komutun adı

Hepsi bu değil. Cron, bir alanda birden fazla değer belirtmenize olanak tanıyan 3 operatör sembolü kullanır:

  1. Yıldız işareti (*): bir alan için olası tüm değerleri belirtir
  2. Virgül (,): değerlerin listesini belirtir
  3. Çizgi (-): bir değer aralığını belirtir
  4. Ayırıcı (/): bir adım değeri belirtir

Artık Cron'un sözdizimini ve operatörlerini bildiğinize göre bazı cron örneklerine bakalım.

Cron İşi Örnekleri

Cron komutlarını çalıştırmanın ilk adımı crontab'ınızı şu komutla kurmaktır:


crontab -e

/root/backup.sh dosyasını her gün gece 3'te çalıştırın:


0 3 * * * /root/backup.sh

Her ayın ikinci günü 16:30'da script.sh komutunu çalıştırın:

30 16 2 * * /path/to/script.sh

Hafta boyunca akşam 22:00'de /scripts/phpscript.php komutunu çalıştırın:

0 22 * * 1-5 /scripts/phpscript.php

Perlscript.pl'i her gün gece yarısından sonra 23 dakika'da, sabah 2 ve sabah 4'te çalıştırın:

23 0-23/2 * * * /path/to/perlscript.pl

Linux komutunu her Pazar saat 04:05'te çalıştırın:

5 4 * * sun /path/to/linuxcommand

Cron Seçenekleri

Cron işlerini listele.


crontab -l
OR
crontab -u username -l

Tüm crontab işlerini silin.

crontab -r

Belirli bir kullanıcı için Cron işini silin.


crontab -r -u username

Crontab'daki dizeler

Dizeler geliştiricilerin en sevdiği şeyler arasındadır çünkü tekrarlayan yazmayı ortadan kaldırarak zamandan tasarruf etmeye yardımcı olurlar. Cron'da komutları daha hızlı oluşturmak için kullanabileceğiniz belirli dizeler vardır:

  1. @hourly: Saatte bir çalıştırılır, yani “0 * * * *
  2. @midnight: Her gün bir kez çalıştırın, yani “0 0 * * *
  3. @daily: gece yarısıyla aynı
  4. @weekly: Haftada bir kez çalıştırın, yani "0 0 * * 0"
  5. @monthly: Her ay bir kez çalıştırılır, yani “0 0 1 * *
  6. @annually: Her yıl bir kez çalıştırın, yani "0 0 1 1 *"
  7. @yıllık: @yıllık ile aynı
  8. @reboot: Her başlangıçta bir kez çalıştır

Örneğin, sisteminizi her gün şu şekilde yedekleyebilirsiniz:

@daily /path/to/backup/script.sh

Bu noktada Cron'u kullanarak sistem görevlerini oluşturmak ve yönetmek için ihtiyacınız olan her şeye sahipsiniz. Artık zamanlanmış komutları kullanarak çeşitli ortamları kurmaya ve bakımını yapmaya başlayabilirsiniz.

Ne kadar Cron kullanıcısısınız? Peki makaleye katkıda bulunabileceğiniz herhangi bir ayrıntı var mı? Tartışma kutusu aşağıdadır.

Crontab'ın nasıl çalıştığını yeterince anladığınızda, ücretsiz crontab satırları oluşturmak için bu şık Crontab oluşturucu yardımcı programlarını kullanabilirsiniz.

Ayrıca Ubuntu'nun Cron'un nasıl kullanılacağına dair yazısını da buradan okuyabilirsiniz. Yararlı bulabileceğiniz kaynaklara sahiptir.