PLD-doc/book/pl_book__uslugi/pl_uslugi__cron.sec
qwiat
cvs w pld-linux.org
Wto, 19 Kwi 2005, 00:42:36 CEST
Author: qwiat
Date: Tue Apr 19 00:42:32 2005
New Revision: 5781
Modified:
PLD-doc/book/pl_book__uslugi/pl_uslugi__cron.sec
Log:
- poszerzenie opisu: podzial na czesc uzytkownika i czesc
systemowa, dokladniej opisana konfiguracja
Modified: PLD-doc/book/pl_book__uslugi/pl_uslugi__cron.sec
==============================================================================
--- PLD-doc/book/pl_book__uslugi/pl_uslugi__cron.sec (original)
+++ PLD-doc/book/pl_book__uslugi/pl_uslugi__cron.sec Tue Apr 19 00:42:32 2005
@@ -11,55 +11,61 @@
<title>Instalacja</title>
<para>
Program instalujemy za pomocą poldka:
- <screen>poldek> install vixie-cron
-Przetwarzanie zależności...
-vixie-cron-3.0.1
-Zaznaczono 1 pakiet do instalacji
-I vixie-cron-3.0.1
-Do ściągnięcia potrzeba około 107KB pakietów.
-Po rozpakowaniu około 107KB zostanie użytych.
-Pobieranie
-ftp://ftp.pld-linux.org/dists/ac/PLD/i686/PLD/RPMS/vixie-cron-3.0.1.rpm...
-......................... 100.0% [106.7K (106.7K/s)]
-Run /etc/rc.d/init.d/crond start to start cron daemon.
-poldek></screen>
- </para>
-</section>
-<section id="uslugi_cron_konfiguracja">
- <title>Konfiguracja</title>
- <para>
+ <screen># poldek -i vixie-cron</screen>
Po zainstalowaniu program jest praktycznie gotowy do użycia.
Można więc od razu uruchomić demona korzystając z polecenia:
<screen># /etc/rc.d/init.d/crond start</screen>
+ Od tej pory demon może działać nieprzerwane - nie wymaga
+ restartów po rekonfiguracji.
</para>
- <para>
- Konfigurację demona wykonujemy przy pomocy
- polecenia:
- </para>
- <screen># crontab -e</screen>
- <para>
- Uruchamia się nasz ulubiony edytor tekstu i tekst podobny do
- ponizszego przykładu:
- </para>
- <screen>SHELL=/bin/sh
-PATH=/sbin:/bin:/usr/sbin:/usr/bin
-MAILTO=jakis_user
-NICE=15
+</section>
-# run-parts
-01 * * * * /bin/run-parts /etc/cron.hourly
-02 1 * * * /bin/run-parts /etc/cron.daily
-02 2 * * 0 /bin/run-parts /etc/cron.weekly
-02 3 1 * * /bin/run-parts /etc/cron.monthly
-0-59/10 * * * * /bin/run-parts /etc/cron.10min
-15 18 * * 1-5 /bin/run-parts /etc/cron.gielda </screen>
- <para>
- Pierwsze cztery linijki nie wymagają specjalnego opisu. Po
- <emphasis># run-parts</emphasis> mamy przykład najważniejszej
- części konfiguracji. Każda linijka oznacza zdefiniowanie
- jednego zadania, które ma zostać wykonane zgodnie z
- określonymi zasadami. I tak pierwsze 5 kolumn oznacza czas
- wykonania, a 6sta polecenie jakie powinno zostać uruchomione:
+
+<section id="uslugi_cron_tabele">
+ <title>Tabele</title>
+ <para>
+ W cronie istnieje podział na zadania systemowe i zadania
+ użytkowników. Pierwszych zwykle używa się do prac
+ administracyjnych, z drugich korzystają użytkownicy wedle
+ własnych potrzeb. Główna konfiguracja umieszczona jest w
+ pliku <filename>/etc/cron.d/crontab</filename>, konfiguracje
+ lokalne użytkowników przechowywane są w plikach
+ <filename>/var/spool/cron/{login}</filename>. O ile
+ <filename>/etc/cron.d/crontab</filename> może być swobodnie
+ modyfikowany za pomocą edytora tekstu o tyle użytkownicy
+ powinni używać w tym celu odpowiedniego narzędzia (opisanego
+ w dalszej części).
+ </para>
+ <para>
+ Pliki konfiguracji crona nazywane są tabelami, zarówno główny
+ plik konfiguracji jak i konfiguracje użytkowników mają bardzo
+ podobną budowę. Są to pliki tekstowe o ściśle ustalonej składni
+ - każde zadanie jest definiowane w postaci wierszy wg.
+ następującego schematu:
+ </para>
+ <para>
+ <emphasis>{$data-czas} {$użytkownik} {$zadanie}</emphasis>
+ </para>
+ <para>
+ Pierwsze pole określa jak często wykonywane jest zadanie,
+ pole <emphasis>{$użytkownik}</emphasis> występuje jedynie
+ w konfiguracji globalnej (w
+ <filename>/etc/cron.d/crontab</filename>) i wskazuje z
+ jakimi prawami uruchamiane ma być zadanie. Trzecie pole to
+ operacja która ma być wykonywana. W tabelach użytkowników
+ nie podaje się nazwy użytkownika, gdyż polecenia tam zawarte
+ są automatycznie wykonywane z prawami ich właściciela.
+ </para>
+ <para>
+ Przykładowe zadania w /etc/cron.d/crontab:
+ <screen>02 01 * * * root find /home -size +100M > /root/duze_pliki.txt</screen>
+ Przykładowa konfiguracja zwykłego użytkownika:
+ <screen>30 * * * * backup.sh</screen>
+ </para>
+ <para>
+ Sekcja {$użytkownik} i {$zadanie} nie wymagają komentarza więc
+ opisane zostanie jedynie pole {$data-czas}. Pole to składa się z
+ pięciu kolumn:
<itemizedlist>
<listitem>
<para>
@@ -107,17 +113,50 @@
</para>
<para>
Gwiazdka "*" oznacza cały zakres z możliwego przedziału.
- Same zakresy w pierwszych 5ciu kolumnach mogą być
+ Same zakresy w pierwszych pięciu kolumnach mogą być
reprezentowane w różny sposób. Więcej szczegółów na ten temat
dowiemy się wywołując polecenie <command>man 5 crontab</command>
</para>
+</section>
+
+
+<section id="uslugi_cron_konfiguracja_systemowa">
+ <title>Konfiguracja systemowa</title>
+ <para>
+ Główną konfigurację systemu tworzymy za pomocą naszego ulubionego
+ edytora tekstu, poprzez modyfikację pliku <filename>/etc/cron.d/crontab</filename>.
+ Jego zawartość będzie podobna do poniżej przedstawionego przykładu.
+ </para>
+ <screen>SHELL=/bin/sh
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
+MAILTO=jakis_user
+NICE=15
+
+# run-parts
+01 * * * * root /bin/run-parts /etc/cron.hourly
+02 1 * * * root /bin/run-parts /etc/cron.daily
+02 2 * * 0 root /bin/run-parts /etc/cron.weekly
+02 3 1 * * root /bin/run-parts /etc/cron.monthly
+0-59/10 * * * * root /bin/run-parts /etc/cron.10min
+15 18 * * 1-5 root /bin/run-parts /etc/cron.gielda</screen>
+
+ <para>
+ Na samym początku mamy główne opcje demona: pierwsza to powłoka
+ która ma być używana do wywoływania zadań, druga to ścieżka do
+ plików wykonywalnych. Trzecie pole to konto użytkownika do którego
+ będą wysyłane powiadomienia pocztą elektroniczną, ostatnia zmienna
+ to priorytet wykonywanych zadań.
+ </para>
<para>
- Poniżej zostaną wyjaśnione przykłady z naszego pliku
- konfiguracyjnego.
+ Poniżej napisu <emphasis># run-parts</emphasis> umieszczone są
+ konfiguracje zadań, pierwsze cztery linijki stanowią domyślną
+ konfigurację demona. Run-parts jest to specjalne zadanie
+ uruchamiające pliki wykonywalne w katalogu wskazanym w parametrze,
+ pozwala to na łatwe dodawanie zadań dla demona. Opisy przykładów:
</para>
<para>
Wykonanie poleceń zawartych w pliku (plikach) katalogu
- <filename>/etc/cron.hourly</filename> codzinnie, co godzinę -
+ <filename>/etc/cron.hourly</filename> codziennie, co godzinę -
zaczynając od pełnej pierwszej minuty (np. 02:01, 03:01 itd.):
</para>
<screen>01 * * * * /bin/run-parts /etc/cron.hourly</screen>
@@ -158,4 +197,25 @@
<filename>/etc/cron/cron.allow</filename>.
</para>
</section>
-</section>
\ No newline at end of file
+
+
+<section id="uslugi_cron_konfiguracja_uzytkownika">
+ <title>Konfiguracja użytkownika</title>
+ <para>
+ Użytkownicy powinni używać narzędzia <command>crontab</command>,
+ program ten przyjmuje parametry określające akcję która ma być
+ wykonana na tabeli. Parametr <emphasis>-l</emphasis> wyświetla
+ listę zdefiniowanych zadań, parametr <emphasis>-e</emphasis> otworzy
+ plik konfiguracji do edycji, zaś <emphasis>-r</emphasis> usunie całą
+ zawartość konfiguracji użytkownika. Root ma dodatkowo do dyspozycji
+ możliwość zarządzania zadaniami dowolnego użytkownika, w tym celu
+ stosuje się opcję <emphasis>-u</emphasis> z podaną nazwą użytkownika.
+ Wybranie opcji edycji tabeli spowoduje otworzenie edytora tekstu
+ określonego zmienną środowiskową <emphasis>EDITOR</emphasis>,
+ po skończonej edycji plik zostanie automatycznie poddany kontroli
+ poprawności i zapisany jako
+ <filename>/var/spool/cron/{login}</filename>.
+ </para>
+</section>
+
+</section>
Więcej informacji o liście dyskusyjnej pld-doc