Plik /etc/crontab określa składnie do jakiej muszą się stosować użytkownicy cron by wykonywać z powodzeniem planowane zadania. Każda linia pliku podzielona jest na sześć pól.
Pole | Zawartość pola | Opis |
1 | Minuta | Przybiera wartości od 0 do 59. Pole może mieć jedną wartość, wiele wartości oddzielonych przecinkiem (np. 1,3,5), zakres wartości (np. 1-5,6-19) lub znak * oznaczający każdą minutę godziny. |
2 | Godzina | Wartości od 0 (północ) do 23. Podobnie jak w polu 1. można tu stosować liczby oddzielone przecinkiem lub zakresy liczb. |
3 | Dzień miesiąca | Wartości od 1 do 31. Podobnie jak w polu 1. można tu stosować liczby oddzielone przecinkiem lub zakresy liczb. |
4 | Miesiąc | Wartości od 1 do 12 lub od jan do dec. Podobnie jak w polu 1. można tu stosować liczby oddzielone przecinkiem lub zakresy liczb. |
5 | Dzień tygodnia | Wartości od 0 do 6 lub od sun do sut. 0 to Sunday, 1 Monday itd. Podobnie jak w polu 1. można tu stosować liczby oddzielone przecinkiem lub zakresy liczb. |
6 | Komenda lub skrypt | Pełna ścieżka do komendy lub skryptu, który ma być wykonany, wraz z koniecznymi argumentami. |
Gwiazdka * może być użyta ze znakiem ukośnika, np. zapis */2 w polu minuty oznacza co drugą minutę, */3 oznacza co trzecią minutę, 0-59/4 oznacza co każdą czwartą minutę.
Ćwiczenie 1. Dodaj, wylistuj i utwórz zadanie cron.
Jako użytkownik user100 otwórz do edycji crontab (crontab -e) i dodaj poniższy zapis
1 2 |
$ crontab –e */5 1-5 1,15 */2 * /home/user100/script100.sh &> /tmp/script100.out |
Jako root sprawdź obecność nowego pliku o nazwie user100 w katalogu /var/spool/cron.
1 2 |
# ll /var/spool/cron/user100 -rw-------. 1 user100 user100 68 Dec 4 19:26 user100 |
Jako root dodaj użytkownika user100 do pliku /etc/cron.allow
:
1 2 |
# vi /etc/cron.allow user100 |
Jako użytkownik user100 wylistuj zawartość crontab:
1 2 |
$ crontab –l */5 1-5 1,15 */2 * /home/user100/script100.sh &> /tmp/script100.out |
Jako użytkownik user100 usuń wpisy z crontab i potwierdź usunięcie:
1 2 3 |
$ crontab –r $ crontab –l no crontab for user100 |