Ayrıntılı Konu Bilgileri
Sayfa BaşlığıKonu: Crontab Nedir? Nasıl Kullanılır?
Mesaj SayısıMesaj Sayısı: 0 cevap var
OkumaGösterim: 187
Google Özel Arama

Gönderen Konu: Crontab Nedir? Nasıl Kullanılır?  (Okunma sayısı 187 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Crontab Nedir? Nasıl Kullanılır?
« : 16 Mayıs 2019, 08:30:18 »


 

Crontab Nedir? Nasıl Kullanılır?
Yazılım ortamlarını kuran ve bakımını yapan kişiler belirli saatlerde, tarihlerde veya aralıklarla periyodik olarak çalışmak için işleri (komutlar veya kabuk komut dosyaları) zamanlamak için crontab kullanır. Genel amaçlı niteliği Internet'ten dosya indirmek ve düzenli aralıklarla e-posta indirmek gibi işler için kullanışlı olmasına rağmen, sistemin bakımını veya yönetimini otomatikleştirir. Crontab, tekrarlayan görevleri zamanlamak otomatize etmek için en uygun çözümdür. Bir kerelik görevlerin planlanması, genellikle yardımcı programını kullanarak daha kolaydır.

Crontab, belli bir programda periyodik olarak çalıştırılacak kabuk komutlarını belirten bir yapılandırma dosyası olan bir crontab (cron tablo) dosyası tarafından yönlendirilir. Crontab dosyaları, iş listelerinin ve diğer talimatların tutulduğu yerde saklanır. Kullanıcılar kendi bireysel crontab dosyalarına sahip olabilirler ve yalnızca sistem yöneticilerinin düzenleyebileceği bir sistem çapında crontab dosyası (genellikle /etc veya /home/kullaniciadi/etc alt dizini) bulunur.

Crontab ile aşağıdaki gibi işlemleri yapabiliriz:

Belirli saatler içerisinde bir URI üzerinden otomatik dosya indirme işlemi
Sistem üzerinde bulunan ve daha önceden belirlenen klasörlerin yedeklerini almak
Yedekleri alınan dosyaların bir başka uzak sunucuya kopyalanması (replike edilmesi)
Her gün belirli saatlerde sunucu üzerinden e-posta gönderimi yapmak gibi gördüğünüz gibi
Örneklerle Crontab
Crontab'ın bulunduğu dosya yolu çoğu zaman "/etc/crontab" şeklindedir ve $ crontab -e komutu ile otomatik olarak erişilebilir. Karşımıza gelecek olan ekranda basit bir text editörü olacaktır ve en alt satır ise bizim için ayrılmış durumdadır.

┌───────────── dakika (0 - 59)
│ ┌───────────── saat (0 - 23)
│ │ ┌───────────── takvim günü (1 - 31)
│ │ │ ┌───────────── ay (1 - 12)
│ │ │ │ ┌───────────── gün (0 - 6) (0=Pazar, 1=Pazartesi . 6=Cumartesi
│ │ │ │ │                                            ve ayrıca sadece Pazar günü için 7=Pazar)
│ │ │ │ │
│ │ │ │ │
*  *  *  * *  çalıştırılmak istenen komut

Yukarıdaki crontab evrenseldir ve crontab çalıştırmak için sisteminizin unix olması yeterlidir. Şöyle ki; ben her ayın ilk günü sabah saat 07:30'da /home/kullaniciadi dizinimin yedeğini /yedek/kullaniciadi klasörüme almak istiyorum. Bunun için yazmam gereken komut aşağıki gibi olmalıdır.

$ 30 07 1 1 * tar -zcvf /yedek/kullanici.tar.gz /home/kullanici.tar.gz

Crontab Yetkileri
Sistem üzerinde var olan bazı kullanıcıların crontab erişimlerini tamamen kısıtlayabilirsiniz ya da varsayılan olarak erişimi kısıtlanmış olan kullanıcıların ise crontab erişimine izin verebilirsiniz. Bu gibi durumlar için /etc dizini altında iki adet dosya oluşturmamız gerekme. Bu dosyalar ise;

Linklerin Görülmesine İzin Verilmiyor. Üye Ol ya da Giriş Yap

cron.allow
cron.deny
Varsayılan olarak bu iki dosya da sistem üzerinde bulunmaz. Crontab erişimini kısıtlamak istediğiniz kullanıcıları favori text editörünüz ile açıp her bir satıra bir kullanıcı adı gelecek şekilde düzenleyip kaydetmeniz yeterli olacaktır.

Linklerin Görülmesine İzin Verilmiyor. Üye Ol ya da Giriş Yap

Diğer bir senaryoda ise, bütün kullanıcıların crontab erişiminin olmadığını ve bazı kullanıcılara ise crontab erişimi vermek istediğinizi düşündüğümüzde yine favori text editörünüz ile bu sefer cron.allow dosyasını açıp her bir satıra bir kullanıcı adı gelecek şekilde düzenleyip kaydetmeniz yeterlidir.


Paylaş delicious Paylaş digg Paylaş facebook Paylaş furl Paylaş linkedin Paylaş myspace Paylaş reddit Paylaş stumble Paylaş technorati Paylaş twitter
 

Benzer Konular

  Konu / Başlatan Yanıt Son İleti
0 Yanıt
703 Gösterim
Son İleti 27 Temmuz 2013, 15:29:06
Gönderen: oo7
0 Yanıt
349 Gösterim
Son İleti 10 Ağustos 2017, 17:20:30
Gönderen: gubresuyu
0 Yanıt
234 Gösterim
Son İleti 17 Kasım 2018, 16:51:54
Gönderen: alpacino0092
0 Yanıt
286 Gösterim
Son İleti 23 Mayıs 2019, 09:10:41
Gönderen: delaporta444
0 Yanıt
163 Gösterim
Son İleti 18 Ekim 2020, 17:00:11
Gönderen: delaporta444