Kedykoľvek vykonávate akúkoľvek úlohu, môžu existovať iba dva možné výsledky, t.j.e., buď bude úloha vykonaná úspešne, alebo váš systém spôsobí nejaké chyby. V obidvoch prípadoch je výstup úlohy crontab vždy odoslaný e-mailom používateľovi na jeho danom účte, z ktorého si môže používateľ overiť, či bola vykonaná skôr vytvorená úloha. Ak nie, potom môže používateľ ľahko zistiť dôvod. V dnešnom článku sa pokúsime naučiť základnú metódu používania Cron v Linuxe.
Poznámka: Metóda demonštrovaná v tomto článku je vykonaná v Linux Mint 20.
Používanie Cron v Linuxe
Ak chcete používať Cron v systéme Linux Mint 20, postupujte takto:
Najprv by ste mali mať otvorený súbor crontab pre zadávanie svojich úloh crontab. Ak tento súbor už existuje, môžete ho jednoducho otvoriť v textovom editore podľa vášho výberu a začať zadávať požadované úlohy crontab. Ak však tento súbor ešte nie je k dispozícii, musíte ho najskôr vytvoriť. Ak chcete vytvoriť súbor, spustite terminál a spustite nasledujúci príkaz:
$ crontab -e
Po spustení tohto príkazu v termináli váš systém výslovne uvedie, či súbor crontab už existuje. V našom prípade neexistovala, ako vidíte na obrázku nižšie. Potom sa zobrazí výzva na výber editora podľa vášho výberu z daného zoznamu na otvorenie novovytvoreného súboru. Tu je predvolene poukázaný na nano editor, ktorý je najjednoduchší na použitie. Z troch uvedených možností sme vybrali možnosť 1 a potom sme výber potvrdili stlačením klávesu Enter.
Po výbere požadovaného textového editora sa váš súbor crontab otvorí s vybraným textovým editorom a vy budete môcť súbor upravovať. Keďže sme si vybrali nano editor, náš súbor crontab sa otvoril pomocou nano editora. Môžete si prejsť komentáre, ktoré sa nachádzajú v tomto súbore, pretože poskytujú pokyny na úpravu tohto súboru a pridanie úloh crontab doň.
Kvôli vysvetleniu sa s vami podelíme o vytvorenie úlohy crontab na plánovanie záloh všetkých používateľských účtov vo vašom systéme. Táto záloha sa vyskytne o 1 a.m. každý týždeň. Ak chcete vytvoriť takúto úlohu crontab, zadajte do svojho súboru crontab nasledujúci riadok bez symbolu „#“:
0 1 * * 1 tar -zcf / var / backups / home.tgz / home /Tu päť parametrov pred vykonanou úlohou určuje minúty (0-59), hodiny (0-23), deň v mesiaci (1-31), mesiac (1-12) a deň v týždni ( 0-7). Môžete zadať akékoľvek celé číslo v rozsahu poskytnutom pre každý z týchto parametrov alebo môžete namiesto celočíselnej hodnoty uviesť hviezdičku akýkoľvek hodnotu v danom rozsahu. Úloha crontab, ktorú sme chceli vytvoriť, je zobrazená na obrázku nižšie. Po vykonaní tohto zadania môžete jednoducho uložiť súbor a ukončiť editor stlačením Ctrl + X.
Najlepšie na súbore crontab je, že po vykonaní úprav nemusíte systému dávať pokyn, aby aktualizovanú verziu súboru čítal manuálne. Súbor sa skôr automaticky synchronizuje s vaším systémom, akonáhle v ňom urobíte akékoľvek zmeny, čo znamená, že do súboru môžete pridať toľko úloh crontab, koľko chcete. Potom jednoducho súbor uložte a zavrite. Prostredníctvom terminálu budete informovaní, že váš systém inštaluje nový súbor crontab, ako je zvýraznené na obrázku nižšie:
Týmto spôsobom, s využitím úloh crontab, môžete naplánovať zálohy, aktualizácie alebo iné úlohy podľa vášho výberu, napríklad spustenie bash skriptu v zadanom čase. Môžete sa tiež pozrieť na všetky úlohy crontab, ktoré ste pridali do svojho súboru crontab cez terminál, spustením nasledujúceho príkazu:
$ crontab -l
Spustením vyššie uvedeného príkazu zobrazíte zoznam všetkých úloh crontab, ktoré sa nachádzajú v súbore crontab. V tomto prípade, pretože sme do nášho súboru crontab pridali iba jednu úlohu crontab, v našom termináli bude uvedená iba táto úloha crontab, ako je zvýraznené na obrázku nižšie:
Záver
Vytvorením súboru crontab a zmienkou o úlohách crontab v ňom môžete pohodlne naplánovať automatické vykonávanie budúcich úloh bez toho, aby ste museli zasahovať. Úlohy crontabu sú obzvlášť užitočné, ak ste zábudlivý človek a často vám unikajú niektoré dôležité úlohy hneď v čase, keď sa majú vykonávať. Môžete ľahko vytvoriť úlohu crontab pre každú dôležitú úlohu a následne odovzdať zodpovednosť za jej vykonanie démonovi Cron v stanovenom čase.