Jak zaplanować polecenia systemowe za pomocą Cron w systemie Linux

Możesz zaplanować polecenia systemowe za pomocą Cron w systemie Linux. Co to jest Cron? Jest to usługa działająca w tle, która po skonfigurowaniu może wykonać dowolne polecenie, skrypt lub program zgodnie z harmonogramem. A co najważniejsze, jest w pełni konfigurowalny.

Cron jest bardzo przydatny, ale składnia poleceń jest niesamowicie zagmatwana, szczególnie dla przeciętnego użytkownika. Z tego powodu omówimy, jak łatwo zrozumieć Cron i jego składnię poleceń, abyś mógł automatycznie zaplanować polecenia systemowe na komputerze z systemem Linux!

Zainstaluj Cronie

W większości Cron jest wstępnie zainstalowany i skonfigurowany w wielu dystrybucjach Linuksa. Powodem tego jest to, że Cron ma kluczowe znaczenie dla automatyzacji wiersza poleceń w branży Linux SysAdmin.

Nawet jeśli Cron jest skonfigurowany w większości dystrybucji, nie oznacza to, że ma go każdy istniejący system operacyjny Linux. Zanim więc porozmawiamy o tym, jak korzystać z Crona, konieczne jest zainstalowanie go w systemie operacyjnym.

W tej sekcji skupimy się na instalacji Cronie, narzędzia znajdującego się domyślnie w wielu dystrybucjach Redhat Linux. Powód? Ma standardową funkcjonalność dla Crona, a pakiety znajdują się w repozytoriach oprogramowania większości dystrybucji Linuksa.

Aby określić, czy musisz zainstalować pakiet Cronie, uruchom okno terminala i wprowadź poniższe polecenie. Jeśli nic się nie dzieje, twój system nie ma sposobu na zaplanowanie poleceń systemowych i powinieneś zainstalować Cronie.

Crontab —h

Ubuntu / Debian

Ubuntu i Debian nie obsługują Cronie. Jednak te dystrybucje Linuksa często są skonfigurowane z Cronem po wyjęciu z pudełka. Jeśli z jakiegoś powodu twój system nie może używać Crontab, poszukaj pomocy na stronach wiki Debiana lub Ubuntu.

Arch Linux

Arch Linux jest dystrybucją Linuksa zrób to sam, a użytkownicy powinni zainstalować każdy pakiet w swoim systemie i samodzielnie go skonfigurować. W rezultacie wielu użytkowników zaniedbuje instalację aplikacji, która pozwala im zaplanować polecenia systemowe w Cron. Na szczęście aplikacja Cronie znajduje się w repozytorium oprogramowania „Arch Linux Core”. Aby zdobyć Cronie, wprowadź poniżej polecenie Pacman.

sudo pacman -S cronie

Fedora

Fedora Linux jest systemem operacyjnym dla stacji roboczych, więc istnieje duże prawdopodobieństwo, że możesz już współpracować z Cronem i Crontabem. Jeśli jednak z jakiegoś powodu nie możesz, Cronie można łatwo zainstalować za pomocą narzędzia do pakowania DNF.

sudo dnf install cronie -y

OpenSUSE

OpenSUSE Leap (wersja SUSE, z której korzysta większość użytkowników) to system operacyjny stacji roboczej, podobny do Fedory, więc Cron powinien być już skonfigurowany. Jeśli jednak tak nie jest, zainstaluj Cronie za pomocą następującego polecenia Zypper.

sudo zypper install cronie

Ogólny Linux

W mało znanej dystrybucji Linuksa, która nie ma systemu Cron? Na szczęście dla ciebie, Cronie jest oprogramowaniem typu open source i instrukcje budowania są bardzo proste. Aby dowiedzieć się więcej, przejdź do ta strona.

Zaplanuj polecenia systemowe w Cron

Planowanie poleceń systemowych w Cronie wymaga „Crontab”. „Crontab” to plik, który przechowuje twoje operacje i przekazuje je demonowi Cron do wykonania.

Aby uzyskać dostęp do Crontab w swoim systemie, uruchom terminal i uruchom poniższe polecenie. Pamiętaj, aby dołączyć wiersz EDITOR = nano, w przeciwnym razie otrzymasz znacznie trudniejszy edytor, zamiast czegoś prostego, takiego jak Nano.

EDITOR=nano crontab -e

Po uruchomieniu polecenia edytor tekstu otworzy się do nowego pustego pliku. Ten pusty plik jest miejscem, w którym trafiają Twoje polecenia.

W Cron planowanie jest stosunkowo skomplikowane. Mija minuty, godziny, dni, miesiące i dni powszednie. Jednak nie będziemy się zastanawiać, jak ręcznie pisać harmonogram Crona. Zamiast, skierujemy Cię na stronę Crontabgenerator, ponieważ sprawia, że ​​wszystko jest o wiele wygodniejsze.

Gdy już dotrzesz do generatora, użyj pól wyboru, aby wybrać harmonogram. Następnie, gdy będziesz zadowolony z harmonogramu, przejdź do pola „Polecenie do wykonania”.

W polu „Polecenie do wykonania” wpisz polecenia terminala, które mają być wykonywane automatycznie przez komputer lub serwer z systemem Linux. Pamiętaj, że „polecenia” nie są ograniczone do poleceń Linuksa, takich jak „apt update”, „ping” itp. Mogą to być wszystko! Dopóki twoje polecenie działa w terminalu, będzie działać w Cron!

Zakończyłeś wypełnianie polecenia w polu „Polecenie do wykonania”? Kliknij zielony przycisk „Generate Crontab Line”, aby wyświetlić linię tekstu. Następnie zaznacz tekst na stronie wyjściowej i wróć do edytora tekstu Crontab.

Naciśnij Ctrl + Shift + V, aby wkleić kod do Nano. Następnie zapisz go za pomocą Ctrl + O. Po zapisaniu pliku Crontab ciężka praca jest wykonana. Wyjdź z edytora za pomocą Ctrl + X.

Uwaga: osoby, które nie używają Cronie, mogą potrzebować wykonać crontab -e po edycji, aby upewnić się, że nowy plik wejdzie w życie.

Po zakończeniu edycji usługa w tle Cron zauważy i uruchomi ją zgodnie z określonym harmonogramem!