Crontab
Crontab jest procesem pozwaljącym planować zadania wykonywane co okres czasu, tak na poziomie ogólnym systemu (ustawienia dla konta root) jak i użytkownika.
Przykładowe sposoby użycia
*/15 9-17 * * 1-5 date;who >> /root/lista.txt
: w godzinach 9-17 co kwadrans, od poniedziałku do piątku zapisuj czas i listę zalogowanych użytkowników;*/15 * * * 6,0 date;who >> /root/lista.txt
: co kwadrans, w sobotę i niedzielę zapisuj czas i listę zalogowanych użytkowników;
- 15 24 12 5 echo „Gwiazdka idzie, spadaj” : co minutę o 15 do 15:59 24 grudnia jeśli jest piątek.
Praca z crontabem
crontab -l
: pokaż zawartość crontaba bieżącego użytkowikacrontab -l -u kowalski
: pokaż crontab użytkownika kowalskicrontab -e
: edytuj crontab (najczęssciej w vi ale bywają inne edytory)crontab -e -u kowalski
: modyfikuj crontaba kowalskiego
Jeśli chcesz zainstalować crontaba z pliku to:
- Sprawdź czy jest pusty: crontab -l -> no crontab for $USER
- Wypełnij crontaba: crontab lista_poleceń.txt -> wynikiem powinna być lista poleceń przepisanych do crontaba.
Zmienne ogólne
SHELL=/bin/bash
: użyj określonego intrpretera poleceńMAILTO=kowalski
: wyślij wyniki poleceń (tzw. std out) do użytkowni kakowalskiPATH=/sbin:/usr/bin
: posłuż sie określoną ścieżką przeszukania poleceń
Specjalne definicje czasu
@daily 0 0 * * *
#Wykonaj raz na dobę@hourly 0 * * * *
#Wykonaj co godzinę.@reboot
#Po każdym uruchomieniu.@weekly 0 0 * * 1
#wykonaj co tydzień@yearly 0 0 1 1 *
#wykonaj co roku