418 Poznaj Linux
Do umożliwiania lub zastrzegania dostępu do usługi crontab służą dwa pliki:
■ /etc/crontab.allow — plik ten należy utworzyć ręcznie. Jeśli istnieje, do usługi crontab zostaną dopuszczeni tylko wymienieni w nim użytkownicy.
■ /etc/crontab.deny - plik ten jest tworzony automatycznie. Zapisane są w nim nazwy użytkowników nie dopuszczonych do usługi crontab.
Wpisy w pliku crontab.allow mają pierwszeństwo nad wpisami w pliku crontab. aeny. Oba pliki powinny być modyfikowane wyłącznie przez administratora.
Określanie dnia
Dzień, w jakim powinno zostać uruchomione dane polecenie, określają dwie wartości: dzień tygodnia oraz dzień. Polecenia są wykonywane, jeśli przynajmniej jedna z tych dwóch wartości pokrywa się z obecną datą. Przykładowo, poniższy wpis mówi, że dane polecenie powinno być wykonywane o godzinie piątej pierwszego i piętnastego dnia miesiąca oraz w każdy piątek:
0 17 1,15 *, 5
Jeśli użytkownik, którego nazwę umieszczono w pliku crontab.dcny, spróbuje otworzyć do edycji swój plik crontab (wpisując crontab -e), system wygeneruje poniższy błąd:
You (nazwa konta) aro not allowed to U3e this program (crontab).
See crontab(1) tor morę inlormation.
crontab obsługuje procesy, które muszą być uruchamiane regularnie, o określonych porach. Jeśli jednak dane polecenie powinno zostać wykonane tylko raz, lepiej skorzystać z usługi at. at pozwala na uruchomienie dowolnego polecenia o wskazanej godzinie (może to być chwila obecna lub pewien moment w przyszłości).
Uzupełnieniem usługi at jest polecenie batch, które wykonuje polecenia w momencie, gdy pozwala na to obciążenie systemu - ściślej, kiedy obciążenie (mierzone przez /proc/loadavg) spadnie poniżej 1,5 lub poniżej wartości podanej podczas wywołania atrun.
Usługa at (jak również batch) potrafi wczytywać polecenia ze standardowego strumienia wejścia lub z pliku. Oto składnia wszystkich wersji at: