oracular (8) cron.8.gz

Provided by: manpages-pl_4.23.1-1_all bug

NAZWA

       cron - demon do wywoływania odłożonych poleceń (Vixie Cron)

SKŁADNIA

       cron [-f] [-l] [-L poziom-komunikatów] [-n fqdn] [-x flagi-debugowania]

       cron [-N]

OPIS

       cron jest uruchamiany automatycznie z /etc/init.d, przy wchodzeniu w poziom pracy wielu użytkowników.

OPCJE

       -f
           Pozostaje w trybie pierwszoplanowym, nie staje się demonem.

       -l
           Włącza zgodność nazw plików w katalogu /etc/cron.d z LSB. To ustawienie nie wpływa jednak na
           przetwarzanie plików w katalogach /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly lub
           /etc/cron.monthly.

       -n fqdn
           Przy wysyłaniu poczty, w temacie umieszczona zostanie w pełni kwalifikowalna nazwa domeny (FQDN).
           Domyślnie cron skraca nazwę komputera.

       -N
           Uruchamia zadanie cron Natychmiast i wychodzi. Opcja przydatna do testów.

       -L poziom-komunikatów
           Wybiera, jakie informacje o zadaniach mają być zapisywane do dziennika (błędy są logowane niezależnie
           od tej wartości). Jest to suma poniższych wartości:

           1
               zapisuje uruchomienie wszystkich zadań crona

           2
               zapisuje koniec wszystkich zadań crona

           4
               zapisuje wszystkie zadania zakończone niepowodzeniem (kod zakończenia różny od 0)

           8
               zapisuje numer procesu wszystkich zadań crona

           Domyślnie zapisywane jest uruchomienie wszystkich zadań (1). Logowanie jest wyłączane, jeśli
           poziom-komunikatów jest ustawiony na zero (0). Wartość równa piętnaście (15) wybierze wszystkie
           opcje.

       -x flagi-debugowania
           Wyświetla więcej i bardziej szczegółowo informacje debugowania; flagi-debugowania są sumą
           następujących wartości:

           1
               "ext": ...

           2
               "sch": ...

           4
               "proc": ...

           8
               "pars": ...

           16
               "load": ..

           32
               "misc": ...

           64
               "test": ...

           128
               "bit": ...

UWAGI

       cron przeszukuje swój katalog spool (/var/spool/cron/crontabs/) w poszukiwaniu plików crontab (które są
       nazwane zgodnie z kontami w /etc/passwd); odnalezione pliki są następnie ładowane do pamięci. Proszę
       zauważyć, że pliki crontab w tym katalogu nie powinny być osiągane bezpośrednio - do ich aktualizacji i
       dostępu powinno być używane polecenie crontab.

       cron odczytuje również /etc/crontab, które posiada nieco inny format (patrz crontab(5)). W Debianie,
       zawartość /etc/crontab jest predefiniowana do uruchamiania programów w katalogach /etc/cron.hourly,
       /etc/cron.daily, /etc/cron.weekly i /etc/cron.monthly. Konfiguracja ta jest charakterystyczna dla
       Debiana, proszę zapoznać się z opisem w poniższym rozdziale ZMIANY ODNOSZĄCE SIĘ DO DEBIANA.

       Dodatkowo, w Debianie, cron odczytuje pliki w katalogu /etc/cron.d. cron traktuje pliki w /etc/cron.d w
       ten sam sposób, jak w pliku /etc/crontab (przestrzegają one specjalnego formatu tego pliku, np. zawierają
       pole user). Są one jednak niezależne od /etc/crontab: nie dziedziczą np. ustawień zmiennych
       środowiskowych z wspomnianego pliku. Zmiana ta jest charakterystyczna dla Debiana - patrz ZMIANY
       ODNOSZĄCE SIĘ DO DEBIANA.

       Podobnie jak /etc/crontab, pliki w katalogu /etc/cron.d są monitorowane w poszukiwaniu zmian.
       Administrator systemu może tworzyć zadania crona w /etc/cron.d/ z nazwami takimi jak "local" albo
       "local-foo".

       Plik /etc/crontab i pliki w /etc/cron.d muszą był własnością roota i nie mogą być zapisywalne dla grupy
       lub innych. W odróżnieniu od katalogu spool, pliki w katalogach /etc/cron.d oraz /etc/cron.hourly,
       /etc/cron.daily, /etc/cron.weekly i /etc/cron.monthly mogą być również dowiązaniami symbolicznymi pod
       warunkiem, że zarówno samo dowiązanie jak i plik na który ono wskazuje, są własnością roota. Pliki w
       katalogu /etc/cron.d nie muszą być wykonywalne, natomiast pliki w katalogach /etc/cron.hourly,
       /etc/cron.daily, /etc/cron.weekly i /etc/cron.monthly - muszą, ponieważ są uruchamiane przez run-parts
       (patrz podręcznik run-parts(8)).

       Program cron budzi się co minutę, sprawdzając wszystkie pliki crontab i sprawdzając, czy poszczególne
       polecenia nie muszą być wykonane w bieżącej minucie. Po wykonaniu poleceń, ich ewentualne wyjście jest
       wysyłane pocztą do właściciela pliku crontab (lub do użytkownika ze zmiennej środowiskowej MAILTO z pliku
       crontab, jeśli taka istnieje) od właściciela pliku crontab (lub z adresu poczty elektronicznej podanego w
       zmiennej środowiskowej MAILFROM z pliku crontab, jeśli taka istnieje). Kopie potomne crona, które
       wykonują te procesy, mają ich nazwy zapisane wielkimi literami, jak to widać w wyniku poleceń syslog i
       ps.

       Dodatkowo, cron sprawdza co minutę, czy czas modyfikacji swojego katalogu spool (lub pliku /etc/crontab)
       nie zmienił się, a jeśli tak się stało, to cron sprawdza czasy modyfikacji wszystkich plików crontab i
       przeładowuje te z nich, które się zmieniły. Z tego powodu cron nie musi być restartowany po modyfikacji
       plików crontab. Proszę zauważyć, że polecenie crontab(1) aktualizuje czas modyfikacji katalogu spool,
       niezależnie od tego, czy zmodyfikował plik crontab.

       Specjalnym przypadkiem jest, gdy czas zmieni się o mniej niż 3 godziny, np. na początku lub końcu
       obowiązywania czasu letniego. Jeśli czas przesuwa się do przodu, to zadania, które byłyby uruchomione w
       czasie, który został przesunięty, są uruchamiane zaraz po wystąpieniu zmiany. I na odwrót - jeśli czas
       przesunie się do tyłu o mniej niż 3 godziny, to zadania, które przypadają w powtórzonym czasie, nie będą
       uruchamiane ponownie.

       Tyczy się to wyłącznie zadań wykonywanych w określonym czasie (niepodanych jako @hourly, ani nie
       używających „*” jako określenia godziny lub minuty). Zadania, które są podawane z wieloznacznikiem, są
       uruchamiane od razu na podstawie nowego czasu.

       Zmiany zegara o więcej niż 3 godziny, są uważane za poprawki zegara i od razu używany jest nowy czas.

       Program cron zapisuje swoje działania do właściwości „cron” sysloga, a logowanie może być kontrolowane
       przy użyciu standardowej właściwości syslogd(8).

ŚRODOWISKO

       Jeśli zmienne środowiskowe lokalizacji (regionalne) w systemie Debian, w katalogu /etc/default/cron,
       zostaną skonfigurowane, to można nimi zarządzać używając /etc/environment albo za pomocą
       /etc/default/locale, przy czym wartości z drugiego pliku przesłaniają te z pierwszego. Pliki te są
       odczytywane i są używane do ustawienia zmiennych środowiskowych LANG, LC_ALL i LC_CTYPE. Zmienne te są
       używane do ustawienia kodowania poczty elektronicznej, przy czym domyślnie wynosi ono „C”.

       NIE wpływa to na środowisko zadań uruchamianych przez cron. Więcej informacji o modyfikowaniu środowiska
       zadań zawiera strona podręcznika crontab(5).

       Demon będzie używał, jeśli jest obecna, definicji strefy czasowej z pliku /etc/localtime.

       Środowisko może zostać przedefiniowane przez definicje z plików crontab użytkownika, lecz cron obsługuje
       wykonywanie zadań jedynie w pojedynczej strefie czasowej.

ZMIANY ODNOSZĄCE SIĘ DO DEBIANA

       Debian wprowadził pewne zmiany do crona, które nie były dostępne w oryginale. Najważniejsze zmiany to:

       •   obsługa /etc/cron.{hourly,daily,weekly,monthly} poprzez /etc/crontab,

       •   obsługa /etc/cron.d (katalog do umieszczania plików crontab pakietów),

       •   obsługa PAM,

       •   obsługa SELinux,

       •   obsługa auditlog,

       •   obsługa DST (czasu letniego) i inne zmiany/poprawki w stosunku do czasu,

       •   SGID crontab(1) zamiast SUID root,

       •   debianowe położenia plików i polecenia,

       •   debianowa konfiguracja (/etc/default/cron),

       •   wiele innych mniejszych funkcji i poprawek.

       Obsługa /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly i /etc/cron.monthly w Debianie jest
       zapewniona przez domyślne ustawienia w pliku /etc/crontab (patrz systemowy przykład w crontab(5)).
       Domyślny, ogólnosystemowy plik crontab zawiera cztery zadania, uruchamiane: cogodzinnie, codziennie,
       cotygodniowo i comiesięcznie. Każde z tych zadań wykona run-parts, podając każdy z tych katalogów jako
       argument. Zadania są wyłączane, jeśli zainstalowany jest anacron (z wyjątkiem zadań cogodzinnych) aby
       zapobiec konfliktom pomiędzy oboma demonami.

       Jak opisano powyżej, pliki w tych katalogach muszą spełniać kilka warunków, w tym następujące: bycie
       wykonywalnym, bycie własnością roota, nie mogą być zapisywalne dla grupy lub innych i, jeśli są
       dowiązaniami symbolicznymi, muszą wskazywać na pliki będące własnością roota. Dodatkowo, nazwy plików
       muszą spełniać warunki nazw plików programu run-parts: muszą składać się wyłącznie z liter, cyfr i znaków
       podkreślenia („_”) oraz minusa („-”). Każdy plik, który nie spełni powyższych wymagań, nie będzie
       wykonany przez run-parts. Na przykład wszystkie pliki zawierające kropkę, zostaną zignorowane. Celem
       takiej konfiguracji jest zapobiegnięcie wykonywania przez crona plików, które zostały pozostawione przez
       debianowy system zarządzania pakietami, podczas obsługi plików w /etc/cron.d/, jako plików
       konfiguracyjnych (chodzi tu o pliki kończące się na .dpkg-dist, .dpkg-orig, .dpkg-old i .dpkg-new).

       Funkcja ta może zostać użyta przez administratorów systemu i pakiety, do zdefiniowania zadań, które mają
       być uruchamiane w zdefiniowanych interwałach. Pliki tworzone przez pakiety w tych katalogach, powinny być
       nazywane tak samo, jak dostarczający je pakiet.

       Obsługa /etc/cron.d jest dołączona do samego demona cron, który obsługuje ich położenie za pomocą
       ogólnosystemowego spool crontab. Katalog ten może zawierać każdy plik definiujący zadania,
       przestrzegający formatu z /etc/crontab - w przeciwieństwie do katalogu spool crona, pliki te muszą
       zawierać nazwę użytkownika, aby uruchamiać zadania jako definicje zadań.

       Pliki w tym katalogu muszą być własnością roota, lecz nie muszą być wykonywalne (są to pliki
       konfiguracyjne, jak /etc/crontab) i muszą przestrzegać tej samej konwencji nazw, jaka jest używana przez
       run-parts(8): muszą składać się wyłącznie z wielkich i małych liter, cyfr, podkreślników i minusów.
       Oznacza to, że nie mogą zawierać kropek. Jeśli użyto opcji -l (opcja ta może zostać skonfigurowana za
       pomocą /etc/default/cron - patrz niżej), to nazwy plików muszą być zgodne z specyfikacją przestrzeni nazw
       LSB, identycznie jak opcja --lsbsysinit w run-parts.

       Przeznaczeniem tej funkcji było umożliwienie pakietom, wymagającym dokładniejszej kontroli harmonogramu
       niż /etc/cron.{hourly,daily,weekly,monthly}, dodawania swoich plików crontab do /etc/cron.d. Pliki te
       powinny być nazwane tak samo, jak udostępniający je pakiet.

       Domyślna konfiguracja crona jest kontrolowana przez plik /etc/default/cron, który jest odczytywany przez
       skrypt init.d, uruchamiający demona cron. Plik ten określa, czy cron będzie czytał systemowe zmienne
       środowiskowe oraz umożliwia dodawanie dodatkowych opcji do programu cron, przed jego wykonaniem -
       umożliwiając konfigurację zapisywanego dziennika lub definiowanie sposobu traktowania plików w katalogu
       /etc/cron.d.

ZOBACZ TAKŻE

       crontab(1), crontab(5), run-parts(8)

AUTORZY

       Paul Vixie <paul@vix.com>
           Autor niniejszej strony podręcznika (1994).

       Steve Greenland <stevegr@debian.org>
           Opiekun pakietu (1996-2005).

       Javier Fernández-Sanguino Peña <jfs@debian.org>
           Opiekun pakietu (2005-2014).

       Christian Kastner <ckk@debian.org>
           Opiekun pakietu (2010-2016).

       Georges Khaznadar <georgesk@debian.org>
           Opiekun pakietu (2022-2024).

PRAWA AUTORSKIE

       Copyright © 1994 Paul Vixie

       Można dystrybuować dowolnie, z następującymi zastrzeżeniami: nie usuwaj moich danych ze źródeł ani
       dokumentacji (nie przypisuj sobie mojej pracy), oznaczaj swoje zmiany (abym nie był obwiniany za błędy,
       które mogłeś wprowadzić), nie zmieniaj [oryginalny tekst licencji jest dostępny w angielskiej wersji
       podręcznika — przyp. tłum.], ani nie usuwaj niniejszego zastrzeżenia. Może być sprzedawany, jeśli źródła
       służące do jego zbudowania są przekazywane kupującemu. Niniejsze oprogramowanie jest pozbawione
       jakiejkolwiek gwarancji, jawnej lub dorozumianej; używasz na własne ryzyko, odpowiedzialność za
       (potencjalne) szkody spoczywa w całości na użytkowniku.

       Od 1994 roku, Deweloperzy Debiana opiekujący się cronem dokonali wielu zmian w niniejszym podręczniku;
       wyżej wykazano skróconą listę, więcej informacji znajduje się w pliku /usr/share/doc/cron/copyright.

TŁUMACZENIE

       Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys@dione.ids.pl> i
       Michał Kułach <michal.kulach@gmail.com>

       Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać
       zapoznając się z GNU General Public License w wersji 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ lub
       nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

       Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej ⟨manpages-pl-
       list@lists.sourceforge.net⟩.