V prípade systému Linux prichádza s dvoma základnými, ale výkonnými nástrojmi: démon Cron (predvolený plánovač úloh) a na (vhodnejšie na jednorazové plánovanie úloh).
V tejto príručke sa dozviete, ako naplánovať úlohu v systéme Linux.
Naplánujte si úlohy v systéme Linux
Cron
Démon cron je zodpovedný za vykonávanie mnohých úloh v konkrétnych časoch. Tieto úlohy sa zvyčajne spúšťajú na pozadí v naplánovaných časoch. Ponúka veľkú flexibilitu bez ohľadu na úlohu, bez ohľadu na interval (hodinu, týždeň, mesiac, rok alebo čokoľvek iné).
Cron sleduje svoje akcie pomocou súboru crontab. Súbor crontab je skript, ktorý obsahuje všetky informácie potrebné na spustenie všetkých úloh cron.
Poďme sa rýchlo pozrieť na niektoré zo základných použití cronu. V prípade ktoréhokoľvek z nasledujúcich príkazov bude nakonfigurovaný pre používateľa root, ak je spustený s oprávnením sudo. Na demonštráciu som odtiaľto vzal ukážkový súbor crontabu.
Ak chcete zobraziť zoznam všetkých naplánovaných úloh cron pre aktuálneho používateľa, spustite nasledujúci príkaz. Vytlačí všetok obsah súboru crontab.
$ crontab -l
Chcete zoznam úloh cron pre iného používateľa? Namiesto toho spustite tento príkaz.
Ak chcete upraviť skript crontab, spustite príkaz. Ak chcete upraviť súbor crontab pre root, spustite nasledujúci príkaz s oprávnením sudo.
Každý riadok v skripte crontab definuje úlohu. Tu je rýchly rozpis položiek crontab.
Tu je zoznam všetkých možných hodnôt pre všetky tieto polia. Ak sa namiesto číselnej hodnoty použije hviezdička (*), použije sa každá možná hodnota poľa.
- minúta: 0 až 59
- hodiny: 0 až 23
- deň v mesiaci: 1 až 31
- mesiac: 1 až 12
- deň v týždni: 0 (nedeľa) až 6 (sobota)
Podrobného sprievodcu, ako používať crontab na automatizáciu úloh, nájdete v téme, ako nastaviť úlohy cron v systéme Linux. Tu je ďalší rýchly príklad úlohy cron bežiacej každú minútu.
o
Zatiaľ čo cron je primárny spôsob plánovania úloh, at ponúka možnosť spustiť príkaz / skript v konkrétnom čase alebo v pevnom intervale, nezabudnite, že at spustí cieľovú úlohu raz, zatiaľ čo cron úlohu znovu spustí v danom intervale. Nástroj at je v porovnaní s cronom menej populárny, ale jeho použitie je pomerne jednoduchšie. Môžete použiť určité kľúčové slová, ako napríklad polnoc alebo čas na čaj (4 str.M.).
Tento nástroj nie je predinštalovaný vo väčšine distribúcií systému Linux. Pre inštaláciu na spustite príslušný príkaz podľa vašej distribúcie.
Pre Debian / Ubuntu a deriváty.
$ Sudo apt nainštalovať -y na
Pre CentOS / RHEL a deriváty.
Pre Arch Linux a deriváty.
$ sudo Pacman -S oPre Fedoru a deriváty.
$ sudo dnf nainštalovať naPo dokončení inštalácie povoľte at daemon.
$ sudo systemctl enable --now atď.služby
Spôsob práce je trochu iný. Kedykoľvek voláte na, musíte definovať interval vykonania požadovanej úlohy. Napríklad ak chcete spustiť určitý príkaz po hodine, použite nasledujúci príkaz.
Ak chcete spustiť požadovanú úlohu pri 6 P.M., o šesť dní odteraz namiesto toho spustite nasledujúci príkaz.
Po spustení príkazu at požiada o spustenie príkazov. Ak chcete výzvu ukončiť, stlačte „Ctrl + d.„V súčasnosti uvádzam súhrn naplánovaných úloh a čas ich vykonania.
Toto je iba základné použitie. Dôslednejším spôsobom použitia at by mohlo byť vykonanie bash skriptu obsahujúceho všetky úlohy, ktoré je potrebné vykonať. Mám záujem dozvedieť sa viac o skriptovaní bash? Skontrolujte
$ o 18:00 + 6 dní -nf