GNU/Linux >> Znalost Linux >  >> Linux

Průvodce Cron Jobs pro začátečníky

Cron je jednou z nejužitečnějších utilit, které můžete najít v jakémkoli operačním systému typu Unix. Cron se používá k plánování příkazů na konkrétní čas. Tyto naplánované příkazy nebo úlohy jsou známé jako "Cron Jobs" . Cron se obecně používá pro spouštění plánovaných záloh, sledování místa na disku, pravidelné mazání souborů (například souborů protokolu), které již nejsou potřeba, spouštění úloh údržby systému a mnoho dalšího. V tomto stručném průvodci uvidíme základní použití Cron Jobs v Linuxu s příklady.

1. Průvodce Cron Jobs pro začátečníky

Typický formát úlohy cron je:

Minute(0-59) Hour(0-24) Day_of_month(1-31) Month(1-12) Day_of_week(0-6) Command_to_execute

Stačí si zapamatovat formát úlohy cron nebo si vytisknout následující obrázek a mít ho na stole.

Na obrázku výše hvězdičky označují konkrétní bloky času.

Zobrazení obsahu crontab soubor aktuálně přihlášeného uživatele:

$ crontab -l

Chcete-li upravit úlohy cron aktuálního uživatele, postupujte takto:

$ crontab -e

Pokud je to poprvé, budete požádáni o výběr editoru pro úpravu úloh cron.

no crontab for sk - using an empty one

Select an editor. To change later, run 'select-editor'.
 1. /bin/nano <---- easiest
 2. /usr/bin/vim.basic
 3. /usr/bin/vim.tiny
 4. /bin/ed

Choose 1-4 [1]:

Vyberte si jakýkoli, který vám vyhovuje. Zde je návod, jak vypadá ukázkový soubor crontab.

V tomto souboru musíte přidávat své cron úlohy jednu po druhé.

Chcete-li upravit crontab jiného uživatele, například ostechnix , udělejte:

$ crontab -u ostechnix -e

1.1. Cron Jobs tutoriál

Zde je seznam nejběžněji používaných příkazů úlohy cron s příklady.

1. Chcete-li spustit úlohu cron každou minutu , formát by měl být jako níže.

* * * * * <command-to-execute>

Pokud je například čas 10:00, další úloha se spustí v 10:01, 10:02, 10:03 a tak dále.

2. Chcete-li spouštět úlohu cron každou 5. minutu , přidejte do svého souboru crontab následující.

*/5 * * * * <command-to-execute>

Pokud je například čas 10:00, další úloha se spustí v 10:05, 10:10, 10:15 a tak dále.

3. Chcete-li spustit úlohu cron každou čtvrthodinu (tj. každou 15. minutu), přidejte toto:

*/15 * * * * <command-to-execute>

Pokud je například čas 10:00, další úloha bude spuštěna v 10:15, 10:30, 10:45 a tak dále.

4. Chcete-li spustit úlohu cronu každou hodinu ve 30. minutě :

30 * * * * <command-to-execute>

Pokud je například čas 10:00, další úloha bude spuštěna v 10:30, 11:30, 12:30 a tak dále.

5. Můžete také definovat více časových intervalů oddělených čárkami. Například následující úloha cron se spustí třikrát každou hodinu, v minutě 0, 5 a 10:

0,5,10 * * * * <command-to-execute>

6. Spusťte úlohu cron každou půlhodinu tj. každou 30. minutu :

*/30 * * * * <command-to-execute>

Pokud je například nyní 10:00, další úloha bude spuštěna v 10:30, 11:00, 11:30 a tak dále.

7. Spusťte úlohu každou hodinu (v minutě 0):

0 * * * * <command-to-execute>

Pokud je například nyní 10:00, další úloha bude spuštěna v 11:00, 12:00, 13:00 a tak dále.

8. Spustit úlohu každé 2 hodiny :

0 */2 * * * <command-to-execute>

Pokud je například nyní 10:00, další úloha se spustí ve 12:00.

9. Spusťte úlohu každý den (Poběží v 00:00):

0 0 * * * <command-to-execute>

10. Spusťte úlohu každý den ve 3:00 :

0 3 * * * <command-to-execute>

11. Spusťte úlohu každou neděli :

0 0 * * SUN <command-to-execute>

Nebo,

0 0 * * 0 <command-to-execute>

Poběží v neděli přesně v 00:00.

12. Spusťte úlohu každý den v týdnu od pondělí do pátku tj. každý pracovní den :

0 0 * * 1-5 <command-to-execute>

Úloha začne v 00:00.

13. Spusťte úlohu každý měsíc (tj. v 00:00 dne 1. měsíce):

0 0 1 * * <command-to-execute>

14. Spusťte úlohu v 16:15 dne 1. měsíce :

15 16 1 * * <command-to-execute>

15. Spusťte úlohu každé čtvrtletí tj. v den v měsíci 1 v každém 3. měsíci:

0 0 1 */3 * <command-to-execute>

16. Spusťte úlohu v určitý měsíc v určitou dobu :

5 0 * 4 * <command-to-execute>

Úloha začne v dubnu v 00:05.

17. Spusťte úlohu každých 6 měsíců :

0 0 1 */6 * <command-to-execute>

Tato úloha cron začne v 00:00 1. dne v měsíci v každém 6. měsíci.

18. Spusťte úlohu každý rok :

0 0 1 1 * <command-to-execute>

Tato úloha cron začne v 00:00 dne 1. měsíce v lednu.

K definování úlohy cron můžeme také použít následující řetězce.

Řetězce úlohy Cron Akce
@reboot Spustit jednou, při spuštění.
@ročně Spustit jednou ročně.
@ročně (stejně jako @ročně).
@měsíční Spouštět jednou za měsíc.
@weekly Běhejte jednou týdně.
@daily Běhejte jednou denně.
@midnight (stejně jako @daily).
@hourly Spouštět jednou za hodinu.

19. Chcete-li spustit úlohu při každém restartování serveru , přidejte tento řádek do svého souboru crontab.

@reboot <command-to-execute>

20. Chcete-li odebrat všechny úlohy cron pro aktuálního uživatele:

$ crontab -r

21. Podrobnosti o použití úlohy cron naleznete na manuálových stránkách.

$ man crontab

V této fázi můžete mít základní znalosti o tom, co je Crontab a jak vytvářet, spouštět a spravovat úlohy cron v systémech Linux a Unix.

Nyní se seznámíme s některými grafickými nástroji, které nám značně usnadňují správu úloh cron.

2. Generátory syntaxe Crontab

Jak vidíte, plánování úloh cronu je mnohem jednodušší. K dispozici je také několik webových generátorů syntaxe crontab, které tuto práci ještě usnadňují. Nemusíte se učit nazpaměť a/nebo se učit syntaxi crontab.

Následující dvě webové stránky vám pomohou snadno vygenerovat výraz crontab na základě vašich vstupů. Jakmile vygenerujete řádek podle svých požadavků, stačí jej zkopírovat/vložit do crontab soubor.

2.1. Crontab.guru

Crontab.guru je vyhrazená webová stránka pro učení příkladů úloh cron. Stačí zadat své vstupy na web a během několika minut se okamžitě vytvoří syntaxe crontab.

Tato stránka také poskytuje spoustu příkladů úloh cron a tipy . Zkontrolujte je a zjistěte, jak naplánovat cronjob.

2.2. Generátor Crontab

Na to upozornil jeden z našich čtenářů pan Horton v sekci komentářů níže.

Crontab Generator je další web, který nám pomáhá rychle a snadno generovat výrazy crontab. Na této stránce je uveden formulář s více položkami. Uživatel musí vybrat všechna povinná pole ve formuláři.

Nakonec klepněte na "Generate Crontab Line" tlačítko dole.

Na další obrazovce uživatel uvidí svůj výraz crontab. Stačí jej zkopírovat/vložit do souboru crontab. Je to tak jednoduché.

Snadné, že? Obě tyto webové stránky určitě pomohou nováčkům, kteří nemají mnoho zkušeností s vytvářením pracovních míst cron.

3. Grafické rozhraní Crontab

Pro snadné vytváření úloh cron prostřednictvím grafického rozhraní je k dispozici několik front-endových nástrojů Crontab. Není třeba upravovat soubor Crontab z příkazového řádku pro přidávání nebo správu úloh cron! Tyto nástroje výrazně usnadní správu úloh cronu!

3.1. Uživatelské rozhraní Crontab

Uživatelské rozhraní Crontab je webový nástroj pro snadnou a bezpečnou správu úloh cron v Linuxu. K vytváření, odstraňování a správě úloh cron nemusíte ručně upravovat soubor crontab. Vše lze provést pomocí webového prohlížeče několika kliknutími myši.

Uživatelské rozhraní Crontab vám umožňuje snadno vytvářet, upravovat, pozastavovat, mazat, zálohovat úlohy cron a také importovat, exportovat a nasazovat úlohy na jiných počítačích bez větších potíží.

Pokud vás zajímá více, podívejte se na následující odkaz.

  • Jak snadno a bezpečně spravovat úlohy Cron v systému Linux

3.2. Zeit

Zeit je Qt front-end pro crontab a at příkaz. Pomocí Zeit můžeme přidávat, upravovat a odstraňovat úlohy cron prostřednictvím jednoduchého grafického rozhraní. Další podrobnosti naleznete na následujícím odkazu:

  • Zeit – rozhraní GUI pro Crontab pro plánování úloh v Linuxu

4. Závěr

V tomto tutoriálu na kartě Cron jsme diskutovali o tom, co je úloha cron, a o základním použití úloh cron v Linuxu s ukázkovými příkazy. Probrali jsme také několik webových generátorů syntaxe crontab a grafických rozhraní crontab, která se používají ke snadnému vytváření a správě úloh cron v Linuxu.


Linux
  1. Cron Job:Komplexní průvodce pro začátečníky 2022

  2. Přidejte úlohy cron v CWP

  3. CentOS / RHEL:Průvodce cronem pro začátečníky

  1. Odstraňování problémů s úlohami Cron

  2. Průvodce SELinuxem pro začátečníky

  3. Průvodce pro začátečníky ke konfiguraci yum

  1. Cron Jobs / Automatizované úlohy

  2. Jak odstranit úlohy cron

  3. Jak naplánovat úlohy Cron pomocí Crontab