Linux w biznesie arrow Podstawy arrow CRON - periodyczne uruchamianie komend
 
 
 

Warto odwiedzić


Odwiedziny


Reklama

Advertisement

Advertisement








CRON - periodyczne uruchamianie komend PDF Drukuj Email
Oceny: / 0
KiepskiBardzo dobry 
23.12.2005.

CRON wywodzi się z Unix'a. Ma on za zadanie regularne uruchamianie innych programów. Jest demonem działającym w tle. Cron przy wywoływaniu innych komend posługuje się tabelami crontab, które mogą być zdefiniowane oddzielnie dla każdego użytkownika systemowego.

Cron przegląda /var/spool/cron/crontabs w poszukiwaniu plików-tabel (crontab), o nazwach zgodnych z istniejącymi kontami systemowymi. Jeśli uda się odnaleźć takie tabele to są one ładowane do pamięci. Plik konfiguracyjny cron'a to /etc/crontab . Format tego pliku jest nieco inny niż pozostałych tabel.

Cron uruchamia się co minutę (gdyż z taką dokładnością można ustawić czas wywoływania programów) i sprawdza wszystkie załadowane do pamięci tabele wykonując zawarte w nich polecenia. Sprawdza też czy czas modyfikacji tabel nie został zmieniony, wtedy to ładuje taką tabelę do pamięci w miejsce starej. Takie zachowanie powoduje iż nie musimy restartować demona, za każdym razem gdy zmienimy którąkolwiek tabelę.

Tabele z komendami do uruchomienia przez demona CRON noszą nazwę crontab. Tak samo nazywa się program do ich edycji. Polecenie:

$ crontab -l    wyświetla tablicę poleceń dla bieżącego użytkownika systemowego.

$ crontab -e   edytuje tą tablicę

$ crontab -r    czyści tablicę

Efekty wywołania komend oraz standardowe wyjście błędów są przesyłane do właściciela tabeli jeśli zdefiniowano taki mail w zmiennej MAILTO w tabeli crontab.

Przykładowy plik crontab zawiera:

# używaj /bin/sh do wywoływania komend. Nieważne co jest w /etc/passwd. SHELL=/bin/sh
# przesyłaj wyjście do użytkownika paul
MAILTO=paul
# uruchamiaj się 5 minut po północy, codziennie
5 0 * * * $HOME/bin/daily.job >> $HOME/tmp/out 2>&1
# uruchamiaj się od 2:15pm 1-szego w każdym miesiącu -- wyjście jest przesyłane do paul'a
15 14 1 * * $HOME/bin/monthly
# uruchamiaj się o 10 pm w dni robocze, denerwuj Joe.
0 22 * * 1-5 mail -s "Jest 10pm" joe%Joe,%%Gdzie są twoje dzieci?%
23 0-23/2 * * * echo "uruchamiaj 23 min po polnocy, 2am, 4am ..., codziennie"
5 4 * * sun echo "Uruchamiaj się 5 po 4 w niedziele"
0 10 * * 1,3 echo "Uruchamiaj się w każdy poniedzialek i srode o 10.00"

zmienne sterujące oraz określenie kiedy jaka komenda ma być uruchomiona. Pojedynczy wpis do crontab'a składa się z

A B C D E /polecenie_do_wykonania

gdzie w kolumnach A-E podajemy:

  • A - minuta (0-59)
  • B - godzina (0-23)
  • C - dzień miesiąca (1-31)
  • D - miesiąc (1-12, lub angielskie nazwy)
  • E - (0-7 lub angielskie nazwy, 0 - niedziela)
Możemy też używać następujących symboli zastępujących
  • * - kiedykolweik
  • / - lub
Przykładowy wpis to

0/30 * * 1 0  date > date.txt


co oznacza: o pełnej godzinie lub o wpół w styczniu w każdą niedzielę uruchom zapisz datę do pliku date.txt

Liczba komentarzy (0) - Dodaj swój komentarz do tego artykułu...

 
« poprzedni artykuł   następny artykuł »
Komentarze

Jeszcze nie ma komentarzy - dodaj swój używając poniższego formularza...


Strona 1 z 0 ( 0 komentarze(y) )
Dodaj swój komentarz do tego artykułu...CRON - periodyczne uruchamianie kom... ...



Copyright © 2005 - 2006
www.comgroup.pl
Mandriva
Pisanie programów

Search Engine Optimization