crontab kullanimi...

Başlatan ecoxx, 29 Mart 2010 - 21:26:38

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

ecoxx

Crontab ile yedekleme

Oncelikle "crontab" komutundan bahsedelim.

crontab [options] [file]


Crontab komutu ile crontab dosyasini gorebilir,bir crontab olusturabilir yada olusturdugunuz crontab'i geri alabilirsiniz.Bir crontab dosyasi;tek bir satirda,belirtilen zamanda gerceklestirilecek olan komutlardan olusur.

crontab -e

komutunu verdiginizde ekraninizda assagidakine benzer bir ifade goreceksiniz.

Alıntı Yap# m h dom mon dow command

m = minute = dakika 0-59
h = hour = saat 0-23
dom = day of month = ay in hangi gunu 1-31
mon = month = ay 1-12
dow = haftanin hangi gunu 0 = pazar 6 = cumartesi

simdi de crontab ile yedekleme yapalim.Oncelikle bir bash script dosyasi olusturun.
vi yedek.sh

Alıntı Yap#!/bin/sh
tar -cvzf deneme.tar.gz /home/ecoxx/deneme
not1:home klasorunuzde deneme isimli bir klasor oldugunu ve bu klasoru yedeklemeye calistiginizi varsaydim.

daha sonra yedek.sh isimli dosyayi calistirilabilir yapin.

chmod +x yedek.sh
simdi de ;

crontab -e

komutunu verin.

Alıntı Yap# m h  dom mon dow   command
  * 22 * * 1 /home/ecoxx/yedek.sh
not2:yildiz isaretlerinin anlami dakika,ayin hangi gunu ve ay ' in onemsenmedigidir.Sadece saat ve haftanin hangi gununde crontab in calisacagi belirtilmistir.dosyayi kayit edin ve cikin.Crontab zamani geldiginde vermis oldugunuz komutu yerine getirecektir.

kontrol icin de ;

crontab -l

yazabilirsiniz.


garafatma

Eline sağlık, özellikle sunucularla uğraşan arkadaşlar için gayet yararlı bir bilgi.
Bira, Tanrı'nın bizi sevdiğinin ve eğlenmemizi istediğinin kanıtıdır.

>-- Askıdaki Çeviri --< Ubuntu Türkçe Çevirilerine Sizde Destek Olun
Elveda metal müziğin tanrısı... \m/ Ronnie James DIO: 1942 - 2010

Ozmo

bu kod tam olarak ne işe yarıyor anlatım için teşekkürler...

garafatma

Mesela hergün yaptığınız standart işleri, crontab ile otomatikleştirebiliyorsunuz. @ecoxx güzel bir örnek vermiş, sunucularda genelde her hafta veya hergün yedek alınır. Bu iş için teker teker komutları girmek yerine, bir script dosyası oluşturarak, crontab ile bu script dosyasının hangi zamanlarda çalışacağını belirterek o yedek alırken, sizde diğer işlerinizi yapabilirsiniz. Tabi örnekler çoğaltılabilir.
Bira, Tanrı'nın bizi sevdiğinin ve eğlenmemizi istediğinin kanıtıdır.

>-- Askıdaki Çeviri --< Ubuntu Türkçe Çevirilerine Sizde Destek Olun
Elveda metal müziğin tanrısı... \m/ Ronnie James DIO: 1942 - 2010

mustafayilmaz

crontab ile alakalı bir sorum olacak.
şimdi crontaba biz istediğimiz dosyayı ve ne zaman çalıştırdığını gördük diyelim.  Bunun takibini pratik bir yolla nasıl yaparız.
Örneğin her iki dakikada bir o program çalışacak diyelim ve program arka planda çalışıyor olsun. Nereden görebiliriz çalışıp çalışmadığını.
Bu soruyu sormamın sebebi aynen yukarıda anlattığım örneği uyguladım fakat işlemlerde çalıştırmak istediğim programı bir türlü göremiyorum..
Yardımcı olursanız sevinirim...
İyi günler

ironic

top

komutuyla tüm süreçleri görüntüleyebilirsin.

Sadece bir programın durumu için;

ps x | grep programın_adı

mustafayilmaz

#6
Teşekkür ederim evet istediğim tam olarak buydu. :)
Ancak çalışmasını istediğim programı göremiyorum. Galiba bi yerlerde hata yaptım


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 18 Haziran 2010 - 13:42:10

Birşey daha sormak istiyorum. Çalıştırmak istediğimiz her program ,için ayrı crontab dosyası mı oluşturmak gerekiyor yoksa sistem için genel bir crontab oluşturup ona mı yazıyoruz?

ironic

crontab -l

ile eklemiş olduğun görevleri görebilirsin. Yeni görev eklemek için


crontab -e


Her uygulama için yeni girdi eklemen gerekli. Denemedim ama istediğin uygulamaları bir betiğe yazıp, crontab a betiği çalıştırma görevi ekleyebilirsin.

Anlattıklarıma girişte de değinilmiş zaten.