Crontab v Linuxu: PŘÍKLADY plánování úloh

Co je crontab?

Cron je pojmenován podle řeckého slova „Chronos“, které se používá pro čas. Je to systémový proces, který bude automaticky provádět úkoly podle konkrétního plánu. Jedná se o sadu příkazů, které se používají pro spouštění běžných úloh plánování. Crontab je zkratka pro „cron table“. Umožňuje používat k provádění úloh plánovač úloh, který je známý jako cron.

Crontab je také název programu, který se používá k úpravě tohoto plánu. Je řízen souborem crontab, konfiguračním souborem, který označuje příkazy shellu, které se mají pravidelně spouštět pro konkrétní plán.

Proč používat Cronjobs?

Zde jsou důvody pro použití Cronjobs v Linuxu:

  • Pomáhá OS provést plánovanou zálohu souborů protokolu nebo databáze.
  • Odstraňte staré soubory protokolu
  • Archiv a vyčistit databázové tabulky
  • Odešlete jakýkoli e-mail s upozorněním, jako jsou bulletiny, e-mail o vypršení platnosti hesla
  • Pravidelné čištění dat v mezipaměti
  • Crontab je ideální volbou pro automatizaci úloh Unixu.
  • Používá se k automatizaci údržby systému

Jak používat cron v Linuxu?

Systém Linux pack má užitečný plánovač úloh s názvem crontab. Crontab je populární, protože může být naplánován tak, aby spouštěl automatizovaný proces jako root. Díky tomu, že automatizovaný proces běží jako root, jsou změny v systému jednodušší. Stačí změnit úlohu a poté počkat, až se úloha znovu spustí.

Linuxový formát Crontab

Crontab v Linuxu má šest polí. Prvních pět polí definuje čas a datum provedení a 6. pole se používá pro provedení příkazu.

Syntaxe Crontab:

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

Linuxový formát Crontab

  • Astrics (*): Použijte pro spárování
  • Definujte rozsah: Umožňuje definovat rozsah pomocí pomlčky jako 1-10 nebo 30-40 nebo jan-mar, po-st.
  • Definujte více rozsahů: Umožňuje definovat různé rozsahy s oddělenými příkazy jako apr-jun,oct-dec.

Jak přidat/upravit Crontab

Uživatel může upravit své úlohy crontab pomocí následujícího příkazu crontab:

$ crontab -u -e 

Výše uvedený příkaz otevře osobní konfiguraci crontab vašeho počítačového systému, kterou lze upravit pomocí výchozího textového editoru.

Není třeba restartovat crontab, protože při použití následujícího příkazu automaticky převezme vaše změny.

$ crontab -l

Chcete-li odebrat úlohy crontab, použijte následující příkaz.

$ crontab -r

Chcete-li přidat nebo aktualizovat úlohu v crontab, použijte níže uvedený příkaz.

crontab -e

Příkaz pro úpravu crontab jiného uživatele

crontab -u username -e

Jak vypsat Crontab

Příkaz pro zobrazení položek crontab aktuálního uživatele

crontab -l

Příkaz pro zobrazení položek crontab konkrétního uživatele:

crontab -u username -l

Důležité příklady Crontab

Zde jsou některé důležité příklady Crontabu

Description Příkaz
Příkaz Cron pro provádění různých úloh plánování.
Níže uvedený příkaz provádějte denně v 7:5 a XNUMX:XNUMX.
0 7,17 * * * /scripts/script.sh
Příkaz ke spuštění cronu po každých 5 minutách.
*/5* * * * *  /scripts/script.sh
Příkaz plánovače Cron vám pomůže provést úlohu na každém Monday v 5 hodin ráno. Tento příkaz je užitečný při provádění týdenních úkolů, jako je čištění systému.
0 5 * * mon  /scripts/script.sh
Příkaz spustí váš skript v intervalu 3 minut.
*/3 * * * * /scripts/monitor.sh
Příkaz pro naplánování cronu, který se spustí pro konkrétní měsíc.
Tento příkaz pro spouštění úloh běží v měsících únor, červen a září. Někdy potřebujeme naplánovat úkol, abychom provedli vybraný měsíční úkol.
* * * feb,jun,sep *  /script/script.sh
Příkaz k provedení ve vybrané dny. Tento příklad bude spuštěn každý Monday a ve středu v 5 hodin.
0 17 * * mon,wed  /script/script.sh
Tento příkaz umožňuje spuštění cronu každou první sobotu v měsíci.
0 2 * * sat  [ $(date +%d) -le 06 ] && /script/script.sh
Příkaz pro spuštění skriptu v intervalu 6 hodin, takže jej lze nakonfigurovat jako níže.
0 */6 * * * /scripts/script.sh
Tento příkaz naplánuje provedení úlohy dvakrát Monday a úterý. Použijte k tomu následující nastavení.
0 4,17 * * mon,tue /scripts/script.sh
Příkaz naplánujte spuštění cronu po každých 15 sekundách.
* * * * * /scripts/script.sh
* * * * *  sleep 15; /scripts/script.sh
Příkaz k plánování úkolů na roční bázi.
@roční časové razítko je= do „0 0 5 1 *“. Tím se úkol provede v páté minutě každého roku. Můžete jej použít k odeslání novoročních přání.
@yearly /scripts/script.sh 
Příkazové úkoly, které se mají provádět měsíčně.
@měsíční časové razítko je podobné jako „0 0 1 * *“. Tento příkazový výraz umožňuje provedení úkolu v první minutě měsíce.
@monthly /scripts/script.sh
Příkaz pro provedení více úloh pomocí jednoho cronu.
* * * * * /scripts/script.sh; /scripts/scrit2.sh
Příkaz pro plánování úkolů, které se mají provádět na týdenní bázi.
@weekly timestamp je podobné jako „0 0 4 * slunce“. Používá se k provádění týdenních úkolů, jako je čištění systému atd.
@weekly /bin/script.sh
Úkol bude naplánován k provádění na denní bázi.
@denní časové razítko je podobné jako „0 2 * * *“. Úkol provede každou druhou minutu každého dne.
@daily /scripts/script.sh
Umožňuje provádět úkoly každou hodinu.
@hodinové časové razítko je podobné jako „0 * * * *“. Tento příkaz provede úlohu v první minutě každé hodiny.
@hourly /scripts/script.sh
Umožňuje provádění úloh při restartu systému.
@reboot výraz je užitečný pro ty úlohy, které chce systém spustit při startu vašeho systému. To je užitečné pro automatické spouštění úloh na pozadí.
@reboot /scripts/script.sh

Shrnutí:

  • Cron je pojmenován podle řeckého slova „Chronos“, které se používá pro čas.
  • Cronjobs pomáhají OS provádět plánované zálohování souborů protokolu nebo databáze.
  • Linux system Pack má užitečný plánovač úloh s názvem crontab, který lze naplánovat tak, aby spouštěl automatizovaný proces jako root.
  • Crontab v Linuxu má šest polí. Prvních pět polí definuje čas a datum provedení a 6. pole se používá pro provedení příkazu.