crontab

Jak nastavit úlohy Cron v Linuxu

Jak nastavit úlohy Cron v Linuxu
Automatizace a plánování opakovaných úkolů na počítačích a serverech zvyšuje produktivitu a omezuje manuální zásahy a monitorování. Mnoho takových nástrojů je k dispozici pro Linux a jedním z nejpoužívanějších z nich je „cron“.

Tento článek vysvětlí úkoly plánování a spouštění skriptů v pravidelných intervalech pomocí úloh cron.

Co je Cron?

Cron je program plánování úkolů, který běží na pozadí jako proces. Lze jej použít k pravidelnému spouštění určitých úloh, které jsou naplánovány pomocí předdefinované sady pravidel. Cron je předinstalován na většině distribucí Linuxu nebo je k dispozici v úložištích, kde se instaluje ručně.

Cron přednastavení

Cron v Ubuntu je dodáván se sadou předdefinovaných plánovačů. Můžete je zkontrolovat spuštěním následujícího příkazu:

$ ls / etc / cron.*

Obvykle jsou tyto složky „/ etc / cron.hodinově “,„ / etc / cron.denně “,„ / etc / cron.měsíčně “a„ / etc / cron.týdně".

Jednoduše vložte požadované skripty do jedné z těchto složek a spusťte automatické úkoly hodinově, denně, měsíčně nebo týdně.

Cron ve výchozím nastavení používá prostředí „/ bin / sh“. Chcete-li použít „/ bin / bash“ jako shell v cron skriptech, musíte použít „!# / bin / bash ”hashbang v horní části souboru skriptu nebo definujte shell jako proměnnou“ SHELL = / bin / bash ”v prvním řádku v naplánovaném bash skriptu. Přepsání proměnné prostředí „SHELL“ funguje také pro editor crontab vysvětlený níže.

Ne všechny proměnné prostředí systému mohou být vystaveny úlohám cron. Obecně je tedy dobré ručně definovat důležité proměnné prostředí ve skriptu naplánovaném cronem.

Crontab

Crontab vám umožňuje definovat vlastní naplánované úkoly. Můžete jej použít ke konfiguraci plánů cron odlišných od čtyř standardních předvoleb cronu vysvětlených výše.

Chcete-li nastavit naplánovanou úlohu v crontabu, nejprve spusťte editor crontab pomocí níže uvedeného příkazu:

$ crontab -e

Nyní na konec souboru můžete přidat záznam v následujícím formátu:

minuta hodina den měsíc den v týdnu / plný / cesta / do / skript.sh

Kde:

Položka crontab níže pořídí snímek obrazovky vašeho počítače a uloží jej do domovského adresáře jednou v 15:13 hodin 2. března plus každé úterý v březnu v 15:13 hodin.

13 15 2 3 2 scrot

Chcete-li zobrazit seznam všech položek crontab, použijte následující příkaz:

$ crontab -l

Další příklady

Cron úkoly lze nejlépe vysvětlit pomocí příkladů, takže níže uvádíme několik příkladů, které budou pravidelně pořizovat snímky obrazovky vašeho počítače a ukládat je do domovské složky.

Kromě pěti proměnných plánování používá cron také nějaký speciální řetězec k plánování úloh. Tyto řetězce jsou:

Položka crontab níže pořídí snímek obrazovky jednou při každém restartu:

@ restartovat scrot

„@Reboot“ můžete nahradit jinými speciálními řetězci uvedenými výše.

Použití hvězdičky nebo zástupného znaku místo kterékoli z pěti proměnných bude opakovat úlohu ve všech nových instancích této proměnné. Následující položka pořídí snímek obrazovky každou minutu:

* * * * * Scrot

Každou hodinu:

0 * * * * scrot

Každý den v 18:00:

0 18 * * * scrot

Každý měsíc 6. v 18:00:

0 18 6 * * scrot

Pomocí „/“ spusťte skript ve fixním periodickém intervalu 30 minut (spouští se každých 30 minut):

* / 30 * * * * scrot

Pomocí proměnných oddělených čárkami můžete definovat opakované provádění skriptu v pravidelných intervalech. Následující příklad pořídí snímek obrazovky vašeho počítače každou 1., 4. a 5. minutu nové hodiny.

1,4,5 * * * * scrot

Ověření záznamů Crontab

Definování položek crontab může být složité, ale ladění nebo ověření, zda fungují ve správných časových razítkách, je ještě složitější. Jednou z možností je použít virtuální stroj a protokolovat časová razítka skriptu běžícího pravidelně na úloze cron tak, že zahrnete něco jako příkaz „date“ a přesměrujete výstup do textového souboru. Lepším řešením je však použít jednu z mnoha online služeb testování úloh cron dostupných na webu. Doporučuji dát k dispozici web testeru cron tady pokus.

Závěr

Spouštění úloh cron je vynikající způsob, jak automatizovat opakované úlohy, zejména na serverech. Tento nástroj je extrémně výkonný a přizpůsobitelný. Je však důležité ujistit se, že vaše definice plánovače funguje správně, zvláště pokud existují úkoly kritické pro misi.

Jak změnit velikost, barvu a schéma kurzoru myši a kurzoru v systému Windows 10
Ukazatel myši a kurzor ve Windows 10 jsou velmi důležité aspekty operačního systému. To lze říci i pro jiné operační systémy, takže ve skutečnosti nej...
Hry Zdarma a open source herní motory pro vývoj linuxových her
Zdarma a open source herní motory pro vývoj linuxových her
Tento článek pokryje seznam bezplatných a otevřených herních enginů, které lze použít pro vývoj 2D a 3D her v systému Linux. Existuje mnoho takových h...
Hry Výukový program Shadow of the Tomb Raider pro Linux
Výukový program Shadow of the Tomb Raider pro Linux
Shadow of the Tomb Raider je dvanáctý přírůstek do série Tomb Raider - série akčních adventur vytvořená Eidosem Montrealem. Tato hra byla docela dobře...