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żytkowika
crontab -l -u kowalski : pokaż crontab użytkownika kowalski
crontab -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:

  1. Sprawdź czy jest pusty: crontab -l -> no crontab for $USER
  2. 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 kakowalski
PATH=/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

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *