Crontab Kullanımı ve Crontab Örnekleri
1

Crontab linux sistemlerinde kullanılan bir servistir. Crontab bir komutu, scripti ya da uygulamayı belirlediğiniz zaman veya belirli zaman aralıklarıyla çalışmasını sağlamaktadır. Bugün sizlerle crontab kullanımını ve örnek birkaç crontab uygulaması yapacağız.

Crontab Dosyası Düzenleme

Mevcut kullanıcının crontab dosyasını düzenlemek için crontab –e komutunu kullanıyoruz.

Resim-1

Bu komutu çalıştırdıktan sonra vi editörü ile açılmış bir dosya karşımıza çıkacaktır. Bu dosyayı düzenleyerek istediğimiz komutu, scripti ya da uygulamayı belli zaman aralıklarıyla çalıştırabiliriz.

Resim-2

Eğer başka bir kullanıcı için crontab dosyasını düzenlemek istersek crontab –u username –e komutunu kullanmamız gerekmektedir. Bu komutu kullanabilmemiz için superuser(root) kullanıcısında olmamız gerekmektedir. Superuser(root) kullanıcısına geçmek için sudo su komutunu kullanıyoruz.

Crontab Dosyası Listeleme

Crontab dosyasını listelemek ve içindeki işlerin listesini görmek için crontab –l komutunu kullanıyoruz. Eğer kullanıcı için bir crontab dosyası oluşturulmadıysa aşağıdaki ekran görüntüsü şeklinde bir sonuç döner.

Resim-3

Eğer kullanıcı için bir crontab dosyası oluşturulduysa aşağıdaki ekran görüntüsündeki sonuç döner.

Resim-4

Eğer başka bir kullanıcı için crontab dosyasını listemek istersek crontab –u username –l komutunu kullanıyoruz. Bu komutu kullanabilmemiz için superuser(root) kullanıcısında olmamız gerekmektedir. Superuser(root) kullanıcısına geçmek için sudo su komutunu kullanıyoruz.

Crontab Dosyası Silme

Crontab dosyasını silmek için crontab –r komutunu kullanıyoruz. Bu komutu kullanarak planlanan tüm crontab komutlarını temizlemiş oluruz. Eğer kullanıcı için bir crontab dosyası yok ise aşağıdaki sonucu alırız.

Resim-5

Eğer kullanıcının crontab dosyası var ise bu komutu kullanarak dosyayı direk siliyoruz.

Resim-6

Eğer başka bir kullanıcı için crontab dosyasını listemek istersek crontab –u username –r komutunu kullanıyoruz. Bu komutu kullanabilmemiz için superuser(root) kullanıcısında olmamız gerekmektedir. Superuser(root) kullanıcısına geçmek için sudo su komutunu kullanıyoruz.

Crontab Söz Dizimi Nasıl Yapılır

Burada Crontab dosyasının nasıl hazırlanacağını ele alacağız. Aşağıdaki görselde bir komutun crontab söz dizimi örneği bulunmaktadır.

Resim-7

  • (1) => Minute(Dakika) = Komutun çalışacağı dakikayı ayarlar. (0-59) arasında sayılar verilerbilir. Her dakikada çalıştırmak için “*” işareti kullanılır.
  • (2) => Hour(Saat) = Komutun çalışacağı saati ayarlar. (0-23) arasında sayılar verilebilir. Her saatte çalıştırmak için “*” işareti kullanılır.
  • (3) => Day of the mount(Ayın Günü) = Komutun ayın hangi gününde çalışacağını ayarlar. (1-31) arasında sayılar verilebilir. Ayın her günü çalıştırmak için “*” işareti kullanılır.
  • (4) => Mount(Ay) = Komutun çalışacağı ayı ayarlar. (1-12) arasında sayılar verilebilir. Her ay çalıştırmak için “*” işareti kullanılır.
  • (5) => Day of the Week(Haftanın Günü) = Komutun haftanın hangi gününde çalışacağını ayarlar. Bazı sistemlerde (0-6) olarak kullanılır. Bu Pazar-Cumartesi arasıdır. Bazı sistemler (1-7) olarak kullanılır. Bu Pazartesi-Pazar arasındadır. Haftanın tüm günlerinde çalıştırmak için “*” işareti kullanılır.
  • (6) => Çalıştırılacak Komut = Burada çalıştıracağımız komut, script ya da uygulama verilir.
  • (7) => Loglama Yeri = Burada çalıştırdığımız komutun, scriptin ya da uygulamanın sonucunu bir dosyaya yazdırırız.
  • 2>&1 = Sonucu dosyaya yazdırmak için kullanılır.

Crontab Söz Dizimi Örneği

Şimdi öncelikle kendimize bir script hazırlayacağız. Bunun için vi editörünü kullanacağız. Sunucunun ip’sini görmek için bir script hazırlayacağız. Bunun için vi ip.sh komutunu kullanacağız.

Komutu çalıştırdıktan sonra aşağıdaki gibi içini ayarlıyoruz.

Resim-8

Burada ip komutunu tüm yol olarak verme sebebimizin sebebi bazı durumlarda crontab komutu bulamadı hatası veriyor. Bu yüzden komutun tüm yolunu veriyoruz.

Daha sonra chmod +x ip.sh komutunu kullanarak ip.sh scriptine execute yetkisi veriyoruz.

Resim-9

  • Komutu her dakika çalıştırmak için crontab dosyası ayarımız.

Resim-10

  • Her 10 dakikada bir komutu çalıştırmak için crontab dosyası ayarımız.

Resim-11

Burada “/” işaretini kullanarak belirli aralıklarla komutun çalıştırmasını sağladık.

  • Saat 13 ve 19 da komutun çalışması için crontab dosyası ayarımız.

Resim-12

Burada “,” işaretini kullanarak çalışacak zamanları arttırabiliyoruz.

  • Saat 13 ve 19 arasında komutun çalışması için crontab dosyası ayarımız.

Resim-13

Burada “-” işaretini kullanarak 13 ve 19 saatleri arasında komutun çalışmasını sağlayabiliyoruz.

Bugün crontab kullanımı ve birkaç örnek crontab söz dizimi konularını işledik. Keyifle okumanız dileğiyle. Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

www.mshowto.org

TAGs: Crontab, Linux, Centos, Crontab Söz Dizimi, Script, Komut, vi editörü, nano editörü, Crontab ne için kullanılır, Crontab nasıl kullanılır, Crontab örnekleri

Bu İçeriğe Tepkin Ne Oldu?
  • 11
    harika_
    Harika!!
  • 0
    be_enmedim
    Beğenmedim
  • 0
    _ok_iyi
    Çok iyi
  • 0
    sevdim_
    Sevdim!
  • 2
    bilemedim_
    Bilemedim!
  • 1
    olmad_
    Olmadı!
  • 0
    k_zd_m_
    Kızdım!

8 Haziran 1995 yılında Ankara Gölbaşı'nda doğdum. Üniversite yıllarına kadar öğretim hayatımı Gölbaşı'ndaki okullarda geçirdim. Ankara Yıldırım Beyazıt Üniversitesi Bilgisayar Mühendisliği bölümü mezunuyum. Liseden başlayıp üniversitenin sonuna kadar amatör futbol oynadım. 2018 yılında mezun olduktan sonra BiSoft Bilgi Teknolojileri'nde Yazılım Uzman Yardımcısı olarak işe başladım. Daha sonra DevOps Uzman Yardımcısı pozisyonuna geçtim. Şuan Bimser Çözüm firmasında DevOps Uzmanı olarak iş hayatımı sürdürüyorum. Pozisyonumda kendimi geliştirerek yoluma devam ediyorum ve sizlere bu deneyimlerimi aktarmaya çalışacağım.

Yazarın Profili

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Yorumlar (1)

  1. 09/02/2022

    Teşekkürler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir