Ako naplánovať prácu Crontab na každú hodinu

How Schedule Crontab Job

Väčšina používateľov Linuxu pozná plánovač úloh Crontab, ktorý funguje ako tichý démon, ktorý vykonáva všetky úlohy, ktoré sú mu priradené, automaticky bez akéhokoľvek ľudského zásahu. Tento plánovač úloh výrazne uľahčuje život užívateľa Linuxu, pretože užívateľ môže všetky často sa vyskytujúce úlohy odovzdať plánovaču Crontab, takže tieto úlohy je možné vykonávať automaticky podľa zadaného plánu.

Niekedy môžete chcieť vykonať konkrétnu úlohu raz za hodinu. Pre používateľa by to mohla byť mimoriadne náročná úloha, ak by sa úloha mala vykonávať ručne, pretože používateľ by musel byť k dispozícii na vykonanie tejto úlohy každú hodinu. Ak je úloha mimoriadne dôležitá a používateľ nejakým spôsobom zmešká čas na jej vykonanie, môže to mať vážne následky.



Plánovač úloh Crontab môže byť v takýchto situáciách požehnaním. Pomocou programu Crontab môžete do súboru Crontab pridávať úlohy, ktoré sa majú vykonávať ako úloha v určených časoch. Tento článok vám ukáže, ako naplánovať, aby sa úloha Crontab v systéme Linux Mint 20 vyskytovala raz za hodinu.



Metóda plánovania úlohy Crontab na každú hodinu

Ak chcete naplánovať, aby sa úloha crontab v systéme Linux Mint 20 vyskytovala raz za hodinu, postupujte podľa nižšie uvedených krokov.



Krok 1: Vytvorte úlohu na naplánovanie ako úlohu Crontab

Najprv definujeme úlohu, ktorú chceme spustiť ako úlohu Crontab raz za hodinu. Touto úlohou môže byť čokoľvek od vytvorenia zálohy až po spustenie jednoduchého bash skriptu. V tomto prípade vytvoríme bash skript, ktorý bude bežať každú hodinu. Vytvoríme súbor bash v našom domovskom adresári a pridáme skript na vytlačenie náhodnej správy v termináli v tomto súbore bash, ako je znázornené na nasledujúcom obrázku. Potom tento súbor jednoducho uložíme a zatvoríme. Úlohu definujeme tak, aby sa tento bash skript vykonával každú hodinu.

Krok 2: Spustite službu Crontab

Ako vidíte na obrázku nižšie, pred spustením novej služby crontab sme spustili nové okno terminálu.

Pred pridaním tohto skriptu ako úlohy do súboru Crontab musíme najskôr spustiť službu Crontab, čo je možné vykonať vykonaním nasledujúceho príkazu:

$sudosystemctl start cron


Spustením tohto príkazu sa okamžite spustí služba Crontab bez toho, aby sa na termináli zobrazoval akýkoľvek výstup.



Krok 3: Skontrolujte stav služby Crontab

Napriek tomu, že vyššie uvedený príkaz automaticky spúšťa službu Crontab, pred ďalším pokračovaním môžete službu Crontab skontrolovať a overiť jej stav pomocou nasledujúceho príkazu:

$sudosystemctl status cron


Ak sa služba Crontab úspešne spustila, spustenie vyššie uvedeného príkazu vám zobrazí stav Aktívny (v prevádzke), ako je to znázornené na obrázku nižšie. Tento stav potvrdí, že služba Crontab funguje správne.

Krok 4: Spustite súbor Crontab

Keď potvrdíte, že služba Crontab funguje správne, môžete otvoriť súbor Crontab a pridať doň požadovanú úlohu, ktorá sa naplánuje každú hodinu. Súbor Crontab je možné otvoriť spustením nasledujúceho príkazu v termináli:

$crontab -e


Tento príkaz otvorí súbor Crontab v termináli.

Krok 5: Pridajte úlohu do súboru Crontab, aby sa vykonávala každú hodinu

Po otvorení súboru Crontab ho budete musieť upraviť stlačením klávesov Ctrl + O. Potom pridajte do svojho súboru Crontab riadok zvýraznený na nasledujúcom obrázku. V tomto riadku parameter 0 * * * * oznámi démonovi Cron, aby vykonal úlohu raz za hodinu. Do tohto riadka sme zapísali cestu nášho súboru bash, aby démon Cron mal ľahký prístup k súboru bash vždy, keď je úloha vykonaná. Rovnakým spôsobom môžete namiesto zadania cesty k súboru pridať aj iný príkaz, ktorý chcete vykonať každú hodinu. Po pridaní tohto riadku môžete tento súbor uložiť a zavrieť.

Po zatvorení tohto súboru démon Cron automaticky nainštaluje nový Crontab, ako je to znázornené na obrázku nižšie. Týmto spôsobom nemusíte svojmu systému výslovne povedať, že ste do súboru Crontab pridali novú úlohu Crontab, pretože démon Cron sám túto úlohu vykonáva vždy, keď v súbore vykonáte akékoľvek úpravy. Po inštalácii nového súboru Crontab sa úloha spustí každú hodinu.

Záver

V tomto návode ste sa naučili jednoduchú metódu plánovania úlohy Crontab každú hodinu. V príklade diskutovanom v tomto článku sme vytvorili úlohu Crontab pre súbor bash, ktorý sa má vykonávať každú hodinu. Rovnakým postupom môžete vytvoriť akúkoľvek inú úlohu, ktorá sa má vykonávať každú hodinu ako úlohu Crontab. Navyše, ak chcete, aby sa vaša úloha Crontab vykonala v konkrétnom čase do hodiny, napríklad o 10:30, potom o 11:30 a tak ďalej, môžete to urobiť zmenou poľa 0 minút na 30. Takto sa môžete viac hrať s plánovaním úloh pomocou démona Cron.