Istnieją pewne zadania na komputerze, które musimy wykonywać regularnie – na przykład wykonywanie kopii bezpieczeństwa. Do wykonywaniu takich powtarzalnych zadań w systemie Linux służy polecenie Cron – jest nieoceniony w wykonywaniu zadań które wymagają planowania. W tym artykule pokażemy Ci, jak skonfigurować crontab, by uruchamiał zadanie cron co godzinę.
Spis treści
ToggleCo to jest cron?
Cron, to narzędzie, aplikacja służąca do planowania zadań, uruchamiania aplikacji i skryptów w określonym czasie w systemach operacyjnych typu Unix. Umożliwia on planowanie zadań (cykliczne uruchamianie aplikacji, lub skryptów powłoki) które będą się automatycznie uruchamiać o określonej godzinie i dacie. Zadania te nazywane są zadaniami cron.
Cron w systemach Linux i Unix jest powszechnie używany do zadań konserwacyjnych lub administracyjnych, jak uruchamianie kopii zapasowych (z możliwością wysłania ich później na przykład na serwer FTP), czy wysyłanie zautomatyzowanych wiadomości e-mail. Cron można również stosować na przykład do sprawdzania dostępności aktualizacji systemu i wielu innych rzeczy.
Cron do pracy wykorzystuje plik konfiguracyjny o nazwie crontab. Crontab, to zwykły plik tekstowy którego możemy edytować dowolnym edytorem tekstu. Administrator systemu ma możliwość skonfigurować globalny plik crontab z uprawnieniami root, a ponadto każdy z użytkowników może mieć własne ustawienia, ograniczone jednak prawami użytkownika.
Zadanie cron jest zwykle wykonywane w tle, a jeśli występują jakieś dane wyjściowe, to mogą być wysyłane do użytkownika pocztą e-mail, lub zapisywane do pliku. Cron to potężne narzędzie pozwalające zautomatyzować praktycznie każde zadanie, jednak dla początkujących użytkowników może być trudny w obsłudze, jeśli nie znają składni potrzebnych poleceń.
Do czego przyda nam się cron?
Przy pomocy cron, możemy zarządzać praktycznie każdą funkcją komputera, czy serwera i uruchamiać cykliczne zadania o określonej godzinie i dacie. Możemy go wykorzysta na przykład do:
- Automatyzacja powtarzalnych zadań. Zadanie cron może być używane do automatyzacji zadań w regularnych odstępach czasu, takich jak na przykład uruchamianie kopii zapasowych, lub wysyłania cyklicznych wiadomości e-mail, na przykład z przypomnieniami.
- Uruchamianie zadań systemowych zgodnie z harmonogramem. Zadanie cron może nam sprawdzać, czy są dostępne aktualizacje systemu operacyjnego, bądź aplikacji, albo na przykład może regularnie czyścić komputer z plików tymczasowych i niepotrzebnych logów systemowych.
- Automatyczne wykonywanie aktualizacji systemu, aktualizowanie zabezpieczeń i instalacja nowego oprogramowania. Może to pomóc w lepszym zabezpieczeniu systemu i dzięki temu mamy pewność, że na naszym komputerze, czy serwerze zawsze mamy zainstalowane najnowsze wersje aplikacji i bibliotek.
- Poprawa wydajności. Dzięki cron, możemy tak skonfigurować uruchamianie zadań mocno obciążających komputer, aby uruchamiały się w godzinach gdy komputer jest najmniej używany, na przykład w nocy.
Ogólnie rzecz biorąc, cron może nam znacznie usprawnić wykonywanie cyklicznych zadań poprzez ich automatyzację.
Stwórz zadanie cron w terminalu Linux
Do tworzenia zadań cron służy polecenie crontab. Aby utworzyć nowe zadanie cron:
- Otwórz okno terminala
- Wpisz polecenie crontab -e aby otworzyć plik konfiguracyjne cron.
- Dodaj nowy wpis do pliku crontab, pamiętając, aby zachować odpowiedni format, gdyż inaczej zadanie nie uruchomi się:
minuta godzina dzień-miesiąca miesiąc dzień-tygodnia polecenie-do-wykonania
Gwiazdka zamiast minut, godzin, czy miesiąca oznacza, że to zadanie będzie się uruchamiać każdej godziny, minuty, czy każdego miesiąca. Na przykład, jeśli chcemy, by polecenie, lub skrypt uruchamiał się o każdej pełnej godzinie (czyli w minucie 0) każdego dnia każdego miesiąca, musimy wpisać:
0 * * * * polecenie-do-wykonania
- Zapisz plik crontab i zamknij.
- Użyj polecenia crontab -l aby wyświetlić listę zapisanych zadań cron do wykonania.
UWAGA: Składnia poleceń zadań cron może się różnić w zależności od wersji systemu Linux. My bazujemy na systemie Ubuntu. Aby dowiedzieć się więcej o aplikacji cron, wpisz w terminalu man cron
Jak utworzyć zadanie cron w CyberPanel
Jeśli Twój serwer www oparty jest na LiteSpeed, to powinieneś zainstalować nakładkę CyberPanel. Tworzenie zadań cron w CyberPanel jest o wiele prostsze i przyjemniejsze niż w pliku crontab.
- Zaloguj się do Dashboard swojego CyberPanel.
- Kliknij po lewej stronie Websites, a następnie List Websites i wybierz swoją stronę internetową i kliknij Manage
- Przewiń w dół i kliknij na Cron Jobs
- Aby dodać nowe zadanie cron, naciśnij ADD CRON. Aby zobaczyć listę istniejących zadań, kliknij FETCH CURRENT CRON JOBS
- Aby dane zadanie uruchamiało się co tydzień, wybierz z listy Every week. W poniższym przykładzie cron uruchomi napisany wcześniej skrypt do wykonywania kopii bezpieczeństwa co tydzień, każdej środy o godzinie 4:16 w nocy. W oknie Day of week wpisujemy cyfry od 0 do 7.
- 0 i 7 oznacza niedzielę, 1 poniedziałek, 2 wtorek itd
- Możemy również wpisać dni tygodnia słownie po angielsku: mon, tue, wed, thu, fri, sat, lub sun
- Naciśnij Add cron aby zapisać utworzone zadanie
Prawda, że w CyberPanel konfiguruje się cron przyjemniej?