Crontab v Linuxe: PRÍKLADY PLÁNOVANIA ÚLOH

Obsah:

Anonim

Čo je crontab?

Cron je pomenovaný podľa gréckeho slova „Chronos“, ktoré sa používa pre čas. Je to systémový proces, ktorý bude automaticky vykonávať úlohy podľa konkrétneho plánu. Je to sada príkazov, ktoré sa používajú na spustenie úloh pravidelného plánovania. Crontab je skratka pre „cron table“. Umožňuje na vykonávanie úloh používať plánovač úloh, ktorý je známy ako cron.

Crontab je tiež názov programu, ktorý sa používa na úpravu tohto rozvrhu. Je poháňaný súborom crontab, konfiguračným súborom, ktorý označuje príkazy shellu, ktoré sa majú pravidelne spúšťať pre konkrétny plán.

V tejto príručke k operačnému systému sa dozviete:

  • Čo je crontab?
  • Prečo používať CRONJOB?
  • Ako používať cron v Linuxe?
  • Formát Linux Crontab
  • Ako pridať / upraviť Crontab
  • Ako uviesť zoznam Crontabu
  • Dôležité príklady Crontabu

Prečo používať Cronjobs?

Tu sú dôvody použitia Cronjobs v systéme Linux:

  • Pomáha OS vykonať naplánovanú zálohu súborov protokolu alebo databázy.
  • Odstráňte staré súbory denníka
  • Archivujte a vyčistite databázové tabuľky
  • Rozosielajte všetky e-maily s upozorneniami, napríklad Spravodaj, e-mail s vypršaním platnosti hesla
  • Pravidelné čistenie údajov z medzipamäte
  • Crontab je ideálna voľba na automatizáciu úloh systému Unix.
  • Používa sa na automatizáciu údržby systému

Ako používať cron v Linuxe?

Systémový balík Linux má užitočný plánovač úloh s názvom crontab. Crontab je populárny, pretože je možné naplánovať jeho spustenie ako root. Preto automatizovaný proces bežiaci ako root uľahčuje zmeny systému. Musíte len zmeniť úlohu a potom počkať, kým sa úloha znova nespustí.

Formát Linux Crontab

Crontab Linuxu má šesť polí. Prvých päť polí definuje čas a dátum vykonania a šieste pole sa používa na vykonanie príkazu.

Syntax Crontab:

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

  • Astry (*): Používa sa na priraďovanie
  • Definovať rozsah: Umožňuje vám definovať rozsah pomocou spojovníkov ako 1-10 alebo 30-40 alebo jan-mar, po-streda.
  • Definovať viac rozsahov: Umožňuje definovať rôzne rozsahy s oddeleným príkazom ako apríl-jún, október-dec.

Ako pridať / upraviť Crontab

Užívateľ môže upravovať svoje úlohy crontab pomocou nasledujúceho príkazu crontab:

$ crontab -u -e

Vyššie uvedený príkaz otvorí osobnú konfiguráciu crontab vášho počítačového systému, ktorú je možné upraviť pomocou predvoleného textového editora.

Nie je potrebné reštartovať váš crontab, pretože automaticky vyberie vaše zmeny, keď použijete nasledujúci príkaz.

$ crontab -l

Ak chcete odstrániť svoje úlohy z crontab, použite nasledujúci príkaz.

$ crontab -r

Ak chcete pridať alebo aktualizovať úlohu v crontab, použite nižšie uvedený príkaz.

crontab -e

Príkaz na úpravu karty iného používateľa

crontab -u username -e

Ako uviesť zoznam Crontabu

Príkaz na zobrazenie položiek crontab aktuálneho používateľa

crontab -l

Príkaz na zobrazenie položiek crontab konkrétneho používateľa:

crontab -u username -l

Dôležité príklady Crontabu

Tu je niekoľko dôležitých príkladov Crontabu

Popis Velenie
Príkaz Cron na vykonávanie rôznych úloh plánovania. Nižšie uvedený príkaz sa vykonáva o 7:00 a 17:00 denne.
0 7,17 * * * /scripts/script.sh
Príkaz na vykonanie cronu každých 5 minút.
*/5* * * * * /scripts/script.sh
Príkaz plánovača Cron vám pomôže vykonať úlohu každý pondelok o 5:00. Tento príkaz je užitočný na vykonávanie týždenných úloh, ako je čistenie systému.
0 5 * * mon /scripts/script.sh
Príkaz spustite skript v 3-minútovom intervale.
*/3 * * * * /scripts/monitor.sh
Príkaz na naplánovanie cronu, ktorý sa vykonáva pre konkrétny mesiac. Tento príkaz na spustenie úloh beží vo februárových, júnových a septembrových mesiacoch. Niekedy musíme naplánovať úlohu na vykonanie vybranej mesačnej úlohy.
* * * feb,jun,sep * /script/script.sh
Príkaz na vykonanie vo vybrané dni. Tento príklad bude bežať každý pondelok a stredu o 17:00.
0 17 * * mon,wed /script/script.sh
Tento príkaz umožňuje cronu vykonávať každú prvú sobotu v mesiaci.
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh
Príkaz na spustenie skriptu v intervale 6 hodín, aby ho bolo možné nakonfigurovať, ako je uvedené nižšie.
0 */6 * * * /scripts/script.sh
Tento príkaz naplánuje vykonanie úlohy dvakrát na pondelok a utorok. Použite na to nasledujúce nastavenia.
0 4,17 * * mon,tue /scripts/script.sh
Príkaz naplánuje spustenie cron každých 15 sekúnd.
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh
Príkaz na naplánovanie úloh na ročnej báze. @yearly timestamp is = to "0 0 5 1 *". Toto vykoná úlohu v piatej minúte každého roku. Môžete ho použiť na zasielanie novoročných pozdravov.
@yearly /scripts/script.sh
Príkazové úlohy, ktoré sa majú vykonávať mesačne. @mesačná časová pečiatka je podobná „0 0 1 * *“. Tento príkazový výraz umožňuje vykonanie úlohy v prvej minúte mesiaca.
@monthly /scripts/script.sh
Príkaz na vykonanie viacerých úloh pomocou jedného cronu.
* * * * * /scripts/script.sh; /scripts/scrit2.sh
Príkaz na naplánovanie vykonávania úloh na týždennej báze. @týždenná časová pečiatka je podobná „0 0 4 * slnku“. Používa sa na vykonávanie týždenných úloh, ako je čistenie systému atď.
@weekly /bin/script.sh
Úloha bude naplánovaná na každodenné vykonávanie. @denná časová pečiatka je podobná „0 2 * * *“. Úlohu plní v druhú minútu každého dňa.
@daily /scripts/script.sh
Umožňuje vykonávanie úloh každú hodinu. @hodinová časová pečiatka je podobná „0 * * * *“. Tento príkaz vykoná úlohu v prvej minúte každej hodiny.
@hourly /scripts/script.sh
Umožňuje vykonávanie úloh pri reštarte systému. Výraz @reboot je užitočný pre úlohy, ktoré chce systém spustiť pri štarte systému. To je užitočné na automatické začatie úloh na pozadí.
@reboot /scripts/script.sh

Zhrnutie:

  • Cron je pomenovaný podľa gréckeho slova „Chronos“, ktoré sa používa pre čas.
  • Cronjobs pomáha OS pri plánovanom zálohovaní súborov denníka alebo databázy.
  • Systémový balík Linux má užitočný plánovač úloh s názvom crontab, ktorý je možné naplánovať na spustenie automatizovaného procesu ako root.
  • Crontab Linuxu má šesť polí. Prvých päť polí definuje čas a dátum vykonania a šieste pole sa používa na vykonanie príkazu.