grudzień roku pamiętnego 2009, prawdopodobnie 07. Wielka mądrość na
Post by pppProsze o wytlumaczenie czy dobrze rozumiem dzialanie anacrona. Mam
5 1 * * * /home/user/bin/skrytp.sh &> /dev/null
czyli codziennie o 1:05 ma zostac wykonany ten skrypt. Chce uzyc
anacrona, aby wykonal ten skrypt zaraz po uruchomieniu kompa, gdy ten
na przyklad byl wylaczony o tej godzinie i cron nie wykonal tego
zadania. Czy wlasnie tak dziala anacron i czy da sie przy jego pomocy
to osiagnac?
Tobie jest potrzebne coś pomiędzy cronem a anacronem.
cron ma tablicę kiedy ma wykonywać dane zadanie. Jeśli jest wtedy
uruchomiony, zrobi to. Jeśli nie — trudno. Dlatego przez tymczasowe
wyłączenie serwera spowodowane kilkugodzinną przerwą w dostawie prądu
może nie wykonać się jakieś krytyczne zadanie które ma się wykonywać
raz do roku — i jeżeli administrator nie wykona go ręcznie, coś może
się bardzo popsuć.
anacron z kolei ma znacznie luźniejsze podejście do czasu. Uznaje on,
że pewne zadania muszą być wykonywane cyklicznie. Nie zakłada się, że
komputer jest włączony na stałe. Jeśli jakieś zadanie ma być wykonywane
raz na tydzień i zostało wykonane w sobotę, po czym wyjechałeś na
weekend i komputer włączyłeś dopiero w poniedziałek, anacron sprawdza
kiedy zadanie ostatnio zostało wykonane a następnie sprawdza jak często
ma być wykonywane. Jeżeli wyjdzie mu że ostatnio zostało wykonane
dawniej niż powinno, to je wykonuje. Jeśli nie, to zostawia.
Z tego co rozumiem, Ty chcesz wykonywać ten swój skrypt codziennie o 1
w nocy, ale jeśli komputer jest wtedy wyłączony — w najbliższym wolnym
terminie.
Myślę że da się to zrobić dodając zadanie do crona powiedzmy co
godzinę. Zadanie musi sprawdzić dwie rzecz — która jest godzina i kiedy
zostało ostatnio wykonane. Jeżeli jest pierwsza, powinno się wykonać.
Jeżeli jest inna godzina, powinno sprawdzić kiedy zostało ostatnio
wykonane (oczywiście musisz sobie tę informację zapisywać) — jeżeli
dawniej niż dzisiaj w nocy, to również powinno się wykonać.
Jeżeli zaś nie chcesz wykonywać tego skryptu o pierwszej a wystarczy Ci
że wykonuje się raz dziennie, to anacron spełni Twoje oczekiwania.
--
Niżej podpisany, zamieszkały w http://minio.xt.pl ,
Mirosław Zalewski