bionic (8) cron.8.gz

Provided by: manpages-pl_0.7-1_all bug

NAZWA

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

SKŁADNIA

       cron [-f] [-l] [-L poziom-komunikatów]

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.

       -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.

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.  Ogólnie,
       administrator systemu nie powinien używać /etc/cron.d/, lecz standardowego pliku /etc/crontab.

       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). 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/timezone.

       Środowisko  może zostać przefediniowane 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 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)

AUTOR

       Paul  Vixie  <paul@vix.com>  jest  autorem  crona i pierwotnym twórcą tej strony podręcznika systemowego.
       Niniejsza  strona  została  również  zmodyfikowana  do  Debiana   przez   Steve'a   Greenlanda,   Javiera
       Fernandez-Sanguino i Christiana Kastnera.

TŁUMACZENIE

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

       Polskie tłumaczenie jest częścią  projektu  manpages-pl;  uwagi,  pomoc,  zgłaszanie  błędów  na  stronie
       http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją  3.0pl1 oryginału.