Zadania Cron to zaplanowane zadania, które uruchamiają się automatycznie w określonych odstępach czasu w systemach podobnych do Unix. Często są używane do konserwacji systemu, tworzenia kopii zapasowych, automatyzacji skryptów i innych powtarzalnych zadań. Niezależnie od tego, czy zarządzasz własnym serwerem, czy rozwiązujesz problem, znajomość sposobu wyświetlania i listowania zadań cron jest niezbędna. Ten przewodnik pokaże Ci, jak wyświetlić istniejące zadania cron za pomocą polecenia crontab.

Czym jest Crontab?

crontab oznacza tabelę cron. Jest to plik, który zawiera listę zadań cron dla konkretnego użytkownika. Każda linia w tym pliku reprezentuje zadanie i jego zaplanowany czas.

Jak wyświetlić zadania cron bieżącego użytkownika

Aby wyświetlić zadania cron dla aktualnie zalogowanego użytkownika, wystarczy otworzyć terminal i uruchomić:

crontab -l

To polecenie wyświetli zawartość pliku crontab bieżącego użytkownika. Jeśli nie ma zaplanowanych zadań, zobaczysz komunikat podobny do:

no crontab for [username]

Wyświetlanie zadań cron innego użytkownika (jako root)

Jeśli masz uprawnienia roota i musisz sprawdzić zadania cron dla innego użytkownika, użyj flagi -u, a następnie nazwę użytkownika:

sudo crontab -u username -l

Przykład:

sudo crontab -u www-data -l

Jest to przydatne podczas zarządzania zadaniami na poziomie systemu lub rozwiązywania problemów z zadaniami cron dla konkretnych usług.

Wyświetlanie zadań cron w systemie

Oprócz crontabów specyficznych dla użytkowników, system przechowuje również zaplanowane zadania w różnych lokalizacjach:

1. Plik Crontab systemu

cat /etc/crontab

Ten plik zawiera zadania zaplanowane przez system i często zawiera wpisy dla różnych użytkowników.

2. Katalogi zadań cron

Możesz również znaleźć skrypty w tych katalogach:

  • /etc/cron.hourly/

  • /etc/cron.daily/

  • /etc/cron.weekly/

  • /etc/cron.monthly/

Każdy skrypt umieszczony w tych katalogach jest wykonywany w odpowiednich odstępach czasu.

3. Katalog Cron.d

ls /etc/cron.d/

Ten katalog zawiera dodatkowe definicje cron dla usług i aplikacji.

Zrozumienie formatu Crontab

Każda linia w pliku crontab ma następującą składnię:

* * * * * command_to_run
│ │ │ │ │
│ │ │ │ └── Day of the week (0 - 7) [Sunday=0 or 7]
│ │ │ └──── Month (1 - 12)
│ │ └────── Day of month (1 - 31)
│ └──────── Hour (0 - 23)
└────────── Minute (0 - 59)

Przykład:

0 2 * * * /usr/bin/backup.sh

Oznacza to „uruchom /usr/bin/backup.sh codziennie o 2:00 AM”.

Wskazówka: Oczyszczanie wyników za pomocą grep

Jeśli szukasz konkretnych zadań, możesz filtrować wyniki:

crontab -l | grep backup

Podsumowanie

Oto szybkie podsumowanie, jak listować zadania cron:

ZadaniePolecenie
Lista zadań cron bieżącego użytkownikacrontab -l
Lista zadań cron innego użytkownikasudo crontab -u username -l
Wyświetl crontab systemucat /etc/crontab
Lista zadań cron w katalogach systemowychls /etc/cron.*
Wyświetl konkretne zadania cron`crontab -l

Opanowując te proste polecenia, możesz łatwo sprawdzać i zarządzać zadaniami cron na każdym systemie Unix lub Linux. Regularne przeglądanie zaplanowanych zadań zapewnia efektywne działanie systemu i unikanie niepożądanych niespodzianek.