Crontab w systemie Linux: PRZYKŁADY planowania zadań

Spisie treści:

Anonim

Co to jest crontab?

Nazwa Cron pochodzi od greckiego słowa „Chronos” używanego na określenie czasu. Jest to proces systemowy, który automatycznie wykonuje zadania zgodnie z określonym harmonogramem. Jest to zestaw poleceń używanych do wykonywania regularnych zadań planowania. Crontab to skrót od „cron table”. Umożliwia korzystanie z harmonogramu zadań, który jest znany jako cron do wykonywania zadań.

Crontab to także nazwa programu, który służy do edycji tego harmonogramu. Jest sterowany przez plik crontab, plik konfiguracyjny, który wskazuje polecenia powłoki, które mają być uruchamiane okresowo zgodnie z określonym harmonogramem.

W tym samouczku dotyczącym systemu operacyjnego dowiesz się:

  • Co to jest crontab?
  • Dlaczego warto korzystać z CRONJOB?
  • Jak używać crona w Linuksie?
  • Format Linux Crontab
  • Jak dodać / zmodyfikować Crontab
  • Jak wyświetlić listę Crontab
  • Ważne przykłady Crontab

Dlaczego warto korzystać z Cronjobs?

Oto powody używania Cronjobs w Linuksie:

  • Ułatwia systemowi operacyjnemu wykonanie zaplanowanej kopii zapasowej plików dziennika lub bazy danych.
  • Usuń stare pliki dziennika
  • Archiwizuj i czyść tabele bazy danych
  • Wysyłaj wszelkie powiadomienia e-mail, takie jak biuletyny, e-mail o wygaśnięciu hasła
  • Regularne czyszczenie danych w pamięci podręcznej
  • Crontab jest idealną opcją do automatyzacji zadań uniksowych.
  • Służy do automatyzacji konserwacji systemu

Jak używać crona w Linuksie?

Pakiet systemowy Linux ma przydatny harmonogram zadań o nazwie crontab. Crontab jest popularny, ponieważ można go zaplanować, aby uruchamiał zautomatyzowany proces jako root. Dlatego posiadanie zautomatyzowanego procesu działającego jako root ułatwia zmiany w systemie. Wystarczy zmienić zadanie, a następnie poczekać, aż zadanie zostanie ponownie zainicjowane.

Format Linux Crontab

Crontab systemu Linux ma sześć pól. Pierwsze pięć pól określa czas i datę wykonania, a szóste pole służy do wykonania polecenia.

Składnia Crontab:

[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]

  • Astrics (*): Służy do dopasowywania
  • Zdefiniuj zakres: umożliwia zdefiniowanie zakresu za pomocą łącznika, np. 1-10 lub 30-40 lub jan-mar, pon-śr.
  • Zdefiniuj wiele zakresów: umożliwia zdefiniowanie różnych zakresów z oddzielnymi poleceniami, np. Apr-jun, oct-dec.

Jak dodać / zmodyfikować Crontab

Użytkownik może edytować swoje zadania crontab za pomocą następującego polecenia crontab:

$ crontab -u -e

Powyższe polecenie otworzy osobistą konfigurację crontab twojego systemu komputerowego, którą można edytować za pomocą domyślnego edytora tekstu.

Nie ma potrzeby ponownego uruchamiania pliku crontab, ponieważ automatycznie pobierze zmiany, gdy użyjesz następującego polecenia.

$ crontab -l

Aby usunąć zadania crontab, użyj następującego polecenia.

$ crontab -r

Aby dodać lub zaktualizować zadanie w crontab, użyj podanego poniżej polecenia.

crontab -e

Polecenie edycji crontab innego użytkownika

crontab -u username -e

Jak wyświetlić listę Crontab

Polecenie do przeglądania wpisów crontab bieżącego użytkownika

crontab -l

Polecenie do przeglądania wpisów crontab określonego użytkownika:

crontab -u username -l

Ważne przykłady Crontab

Oto kilka ważnych przykładów Crontab

Opis Komenda
Polecenie Cron do wykonywania różnych zadań planowania. Poniżej podane polecenie jest wykonywane codziennie o godzinie 7:00 i 17:00.
0 7,17 * * * /scripts/script.sh
Polecenie wykonania crona co 5 minut.
*/5* * * * * /scripts/script.sh
Polecenie harmonogramu Cron pomaga wykonać zadanie w każdy poniedziałek o 5 rano. To polecenie jest pomocne przy wykonywaniu cotygodniowych zadań, takich jak czyszczenie systemu.
0 5 * * mon /scripts/script.sh
Polecenie uruchamia skrypt co 3 minuty.
*/3 * * * * /scripts/monitor.sh
Polecenie, aby zaplanować crona, który będzie wykonywany przez określony miesiąc. To polecenie do uruchamiania zadań w miesiącach luty, czerwiec i wrzesień. Czasami musimy zaplanować zadanie, aby wykonać wybrane zadanie miesięczne.
* * * feb,jun,sep * /script/script.sh
Polecenie do wykonania w wybrane dni. Ten przykład będzie uruchamiany w każdy poniedziałek i środę o godzinie 17:00.
0 17 * * mon,wed /script/script.sh
To polecenie pozwala cronowi na wykonanie w pierwszą sobotę każdego miesiąca.
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh
Polecenie uruchomienia skryptu w odstępie 6 godzin, dzięki czemu można go skonfigurować jak poniżej.
0 */6 * * * /scripts/script.sh
To polecenie pozwala zaplanować wykonanie zadania dwukrotnie w poniedziałek i wtorek. Aby to zrobić, użyj następujących ustawień.
0 4,17 * * mon,tue /scripts/script.sh
Polecenie zaplanuj wykonanie crona co 15 sekund.
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh
Polecenie do planowania zadań w ujęciu rocznym. @yearly timestamp is = to „0 0 5 1 *”. To wykonuje zadanie w piątej minucie każdego roku. Możesz go użyć do wysłania życzeń noworocznych.
@yearly /scripts/script.sh
Zadania komend do wykonania co miesiąc. @miesięczny znacznik czasu jest podobny do „0 0 1 * *”. To wyrażenie polecenia umożliwia wykonanie zadania w pierwszej minucie miesiąca.
@monthly /scripts/script.sh
Polecenie do wykonywania wielu zadań przy użyciu jednego crona.
* * * * * /scripts/script.sh; /scripts/scrit2.sh
Polecenie do planowania zadań do wykonania co tydzień. @weekly timestamp jest podobny do „0 0 4 * sun”. Służy do wykonywania cotygodniowych zadań, takich jak czyszczenie systemu itp.
@weekly /bin/script.sh
Zadanie będzie wykonywane codziennie. @daily timestamp jest podobny do „0 2 * * *”. Wykonuje zadanie w drugiej minucie każdego dnia.
@daily /scripts/script.sh
Umożliwia wykonywanie zadań co godzinę. @godzinna sygnatura czasowa jest podobna do „0 * * * *”. To polecenie wykonuje zadanie w pierwszej minucie każdej godziny.
@hourly /scripts/script.sh
Zezwala na wykonywanie zadań przy ponownym uruchomieniu systemu. Wyrażenie @reboot jest przydatne w przypadku zadań, które system chce wykonać podczas uruchamiania systemu. Jest to pomocne przy automatycznym rozpoczynaniu zadań w tle.
@reboot /scripts/script.sh

Podsumowanie:

  • Nazwa Cron pochodzi od greckiego słowa „Chronos” używanego na określenie czasu.
  • Cronjobs pomaga systemowi operacyjnemu wykonywać zaplanowane kopie zapasowe plików dziennika lub bazy danych.
  • Pakiet systemowy Linux ma przydatny program do planowania zadań o nazwie crontab, który można zaplanować, aby uruchamiał zautomatyzowany proces jako root.
  • Crontab systemu Linux ma sześć pól. Pierwsze pięć pól określa czas i datę wykonania, a szóste pole służy do wykonania polecenia.