Możesz zautomatyzować wykonywanie poleceń systemowych w systemie Linux, korzystając z narzędzia Cron. Czym jest Cron? To usługa działająca w tle, która, po prawidłowym skonfigurowaniu, jest w stanie uruchomić różne polecenia, skrypty lub programy na podstawie ustalonego harmonogramu. Co najważniejsze, jest to narzędzie w pełni konfigurowalne.
Cron jest niezwykle użyteczny, ale jego składnia może być dość skomplikowana, zwłaszcza dla mniej doświadczonych użytkowników. W związku z tym przyjrzymy się, jak w prosty sposób zrozumieć Cron oraz jego składnię poleceń, abyś mógł efektywnie planować zadania w systemie Linux!
Instalacja Cronie
W większości przypadków Cron jest już zainstalowany i skonfigurowany w różnych dystrybucjach systemu Linux. Dzieje się tak, ponieważ Cron jest kluczowym elementem automatyzacji wiersza poleceń w środowisku Linux SysAdmin.
Mimo że Cron jest dostępny w wielu dystrybucjach, nie oznacza to, że jest obecny w każdym systemie operacyjnym Linux. Przed omówieniem sposobu korzystania z Crona, warto upewnić się, że jest on zainstalowany w twoim systemie.
W tej sekcji skoncentrujemy się na instalacji Cronie, narzędzia domyślnie dostępnego w wielu dystrybucjach Red Hat Linux. Dlaczego? Ponieważ zapewnia standardową funkcjonalność Crona, a pakiety są dostępne w repozytoriach większości dystrybucji Linux.
Aby sprawdzić, czy musisz zainstalować Cronie, otwórz terminal i wpisz poniższe polecenie. Jeśli nie zobaczysz żadnego komunikatu, oznacza to, że twój system nie ma możliwości planowania poleceń systemowych i powinieneś zainstalować Cronie.
crontab -h
Ubuntu / Debian
Ubuntu i Debian zazwyczaj nie używają Cronie, ale te dystrybucje często mają Crona skonfigurowanego od razu po instalacji. Jeśli jednak z jakiegoś powodu Twój system nie obsługuje Crontaba, skorzystaj z dokumentacji na stronach wiki Debiana lub Ubuntu.
Arch Linux
Arch Linux to dystrybucja Linuxa, w której użytkownicy sami muszą instalować i konfigurować poszczególne pakiety. W związku z tym wielu użytkowników może nie zainstalować aplikacji umożliwiającej planowanie poleceń w Cronie. Na szczęście, Cronie jest dostępne w repozytorium „Arch Linux Core”. Aby je zainstalować, wpisz poniższe polecenie z użyciem Pacmana.
sudo pacman -S cronie
Fedora
Fedora Linux to system operacyjny przeznaczony do pracy na stacjach roboczych, więc istnieje duża szansa, że już korzystasz z Crona i Crontaba. Jeśli jednak nie, możesz łatwo zainstalować Cronie za pomocą menedżera pakietów DNF.
sudo dnf install cronie -y
OpenSUSE
OpenSUSE Leap, wersja systemu SUSE, z której korzysta większość użytkowników, jest systemem przeznaczonym do pracy na stacjach roboczych, podobnie jak Fedora, więc Cron powinien być już skonfigurowany. Jeśli tak nie jest, zainstaluj Cronie za pomocą poniższego polecenia Zypper.
sudo zypper install cronie
Inne dystrybucje Linux
Jeśli korzystasz z mniej znanej dystrybucji Linuxa, która nie posiada Crona, nie martw się! Cronie jest oprogramowaniem typu open source, a instrukcje instalacji są bardzo proste. Aby uzyskać więcej informacji, odwiedź tę stronę.
Planowanie poleceń systemowych w Cronie
Do planowania poleceń w Cronie wykorzystuje się „Crontab”. Plik Crontab przechowuje twoje zadania i przekazuje je demonowi Cron do realizacji.
Aby uzyskać dostęp do Crontab w swoim systemie, otwórz terminal i uruchom poniższe polecenie. Pamiętaj, aby dodać wiersz EDITOR=nano, w przeciwnym razie otworzy się trudniejszy w obsłudze edytor, zamiast prostego Nano.
EDITOR=nano crontab -e
Po wykonaniu polecenia otworzy się edytor tekstu z nowym, pustym plikiem. To jest miejsce, w którym będziesz wprowadzać swoje polecenia.
W Cronie planowanie zadań może być dość złożone. Ustalane są minuty, godziny, dni, miesiące oraz dni tygodnia. Nie będziemy jednak omawiać, jak ręcznie tworzyć harmonogram Crona. Zamiast tego, skierujemy Cię do generatora Crontab, który znacznie ułatwi to zadanie.
Gdy już dotrzesz do generatora, skorzystaj z dostępnych opcji, aby ustawić harmonogram. Kiedy będziesz zadowolony z ustawień, przejdź do pola „Polecenie do wykonania”.
W polu „Polecenie do wykonania” wpisz terminalowe polecenia, które mają być automatycznie uruchamiane przez system Linux. Pamiętaj, że „polecenia” nie ograniczają się tylko do komend Linuksa, takich jak „apt update” czy „ping”. Mogą to być wszelkie komendy, które działają w terminalu!
Po wprowadzeniu polecenia w odpowiednim polu, kliknij zielony przycisk „Generate Crontab Line”, aby uzyskać gotową linię tekstu. Następnie skopiuj ten tekst i wróć do edytora Crontab.
Aby wkleić skopiowany tekst do Nano, użyj kombinacji klawiszy Ctrl + Shift + V. Następnie zapisz plik, naciskając Ctrl + O. Po zapisaniu pliku Crontab, twoja praca będzie gotowa. Aby zamknąć edytor, użyj kombinacji Ctrl + X.
Uwaga: Użytkownicy, którzy nie korzystają z Cronie, mogą potrzebować wykonać polecenie crontab -e po edytowaniu, aby upewnić się, że nowy plik został zastosowany.
Po zakończeniu edycji, usługa Cron w tle zauważy zmiany i uruchomi je zgodnie z ustalonym harmonogramem!
newsblog.pl
Maciej – redaktor, pasjonat technologii i samozwańczy pogromca błędów w systemie Windows. Zna Linuxa lepiej niż własną lodówkę, a kawa to jego główne źródło zasilania. Pisze, testuje, naprawia – i czasem nawet wyłącza i włącza ponownie. W wolnych chwilach udaje, że odpoczywa, ale i tak kończy z laptopem na kolanach.