Co je crontab?
Cron je pojmenován podle řeckého slova „Chronos“, které se používá pro čas. Jedná se o systémový proces, který automaticky provede úkoly podle konkrétního plánu. Jedná se o sadu příkazů, které se používají ke spouštění pravidelných plánovacích úkolů. Crontab je zkratka pro „cron table“. Umožňuje k provádění úkolů používat 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 poháněn souborem crontab, konfiguračním souborem, který označuje příkazy prostředí, které se mají pravidelně spouštět pro konkrétní plán.
V tomto kurzu operačního systému se naučíte:
- Co je crontab?
- Proč používat CRONJOB?
- Jak používat cron v Linuxu?
- Formát Linux Crontab
- Jak přidat / upravit Crontab
- Jak vypsat Crontab
- Důležité příklady Crontabu
Proč používat Cronjobs?
Tady jsou důvody pro použití Cronjobs v Linuxu:
- Pomáhá OS plánovaně zálohovat soubory protokolu nebo databázi.
- Odstraňte staré soubory protokolu
- Archivujte a vyčistěte databázové tabulky
- Zasílejte všechny e-maily s oznámeními, jako jsou zpravodaje, e-maily s vypršením 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?
Balíček systému Linux obsahuje užitečný plánovač úloh s názvem crontab. Crontab je populární, protože lze naplánovat spuštění automatizovaného procesu jako root. Proto automatizovaný proces spuštěný jako root usnadňuje změny systému. Musíte pouze změnit úkol a poté počkat, dokud se úkol znovu nespustí.
Formát Linux Crontab
Crontab Linuxu má šest polí. Prvních pět polí definuje čas a datum provedení a šesté 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]
- Astrics (*): Slouží k párování
- Definovat rozsah: Umožňuje definovat rozsah pomocí pomlček jako 1-10 nebo 30-40 nebo Jan-Mar, Po-St.
- Definovat více rozsahů: Umožňuje definovat různé rozsahy s oddělením příkazů jako duben-červen, říjen-prosinec.
Jak přidat / upravit Crontab
Uživatel může upravovat 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í nutné restartovat crontab, protože automaticky provede změny, když použijete následující příkaz.
$ crontab -l
Chcete-li odebrat úkoly crontab, použijte následující příkaz.
$ crontab -r
Chcete-li přidat nebo aktualizovat úlohu v crontabu, použijte níže uvedený příkaz.
crontab -e
Příkaz k úpravě crontabu jiného uživatele
crontab -u username -e
Jak vypsat Crontab
Příkaz k zobrazení položek crontab aktuálního uživatele
crontab -l
Příkaz k zobrazení položek crontab konkrétního uživatele:
crontab -u username -l
Důležité příklady Crontabu
Zde je několik důležitých příkladů Crontabu
Popis | Příkaz |
Příkaz Cron pro provádění různých úloh plánování. Níže uvedený příkaz se spouští denně v 7:00 a 17:00. |
0 7,17 * * * /scripts/script.sh |
Příkaz k provedení cronu po každých 5 minutách. |
*/5* * * * * /scripts/script.sh |
Příkaz plánovače Cron vám pomůže provést úkol každé pondělí 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í skript v intervalu 3 minut. |
*/3 * * * * /scripts/monitor.sh |
Příkaz k naplánování cronu, který se spustí pro konkrétní měsíc. Tento příkaz ke spuštění úloh běží v měsících únor, červen a září. Někdy musíme 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é pondělí a středu v 17:00. |
0 17 * * mon,wed /script/script.sh |
Tento příkaz umožňuje cronu vykonávat první sobotu každého měsíce. |
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh |
Příkaz pro spuštění skriptu po dobu 6 hodin, aby jej bylo možné nakonfigurovat níže. |
0 */6 * * * /scripts/script.sh |
Tento příkaz naplánuje provedení úlohy dvakrát v pondělí a úterý. Použijte následující nastavení. |
0 4,17 * * mon,tue /scripts/script.sh |
Příkaz naplánuje spuštění cronu každých 15 sekund. |
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh |
Příkaz k plánování úkolů na ročním základě. @rokové časové razítko je = až „0 0 5 1 *“. Tím se úkol provede v páté minutě každého roku. Můžete jej použít k zasílání novoročních pozdravů. |
@yearly /scripts/script.sh |
Ovládejte úkoly, které se mají provádět každý měsíc. @měsíční časové razítko je podobné „0 0 1 * *“. Tento příkazový výraz umožňuje provedení úkolu v první minutě měsíce. |
@monthly /scripts/script.sh |
Příkaz k provádění více úkolů pomocí jednoho cronu. |
* * * * * /scripts/script.sh; /scripts/scrit2.sh |
Příkaz k naplánování úloh, které se mají provádět každý týden. @týdenní časové razítko je podobné „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 na každodenní provádění. @denní časové razítko je podobné „0 2 * * *“. Úkol provádí ve druhé minutě každého dne. |
@daily /scripts/script.sh |
Umožňuje úkoly provádět za hodinu. @hodinová časová známka je podobná „0 * * * *“. Tento příkaz provede úkol v první minutě každé hodiny. |
@hourly /scripts/script.sh |
Umožňuje provádění úkolů při restartu systému. Výraz @reboot je užitečný pro ty úkoly, které chce systém spustit při spuštění systému. To je užitečné pro automatické zahájení úloh na pozadí. |
@reboot /scripts/script.sh |
Souhrn:
- Cron je pojmenován podle řeckého slova „Chronos“, které se používá pro čas.
- Cronjobs pomáhají OS plánovanou zálohu souborů protokolu nebo databáze.
- Balíček systému Linux obsahuje užitečný plánovač úloh s názvem crontab, u kterého lze naplánovat spuštění automatizovaného procesu jako root.
- Crontab Linuxu má šest polí. Prvních pět polí definuje čas a datum provedení a šesté pole se používá pro provedení příkazu.