GNU/Linux >> Znalost Linux >  >> Linux

Crontab Reboot:Jak provést úlohu automaticky při spouštění

Úvod

Démon Cron je linuxový nástroj používaný k plánování systémových úloh a procesů. K ukládání a čtení naplánovaných úloh používá cron tabulky (crontab).

Tento výukový program se bude zabývat tím, jak můžete použít crontab k plánování úloh, které mají být spuštěny při restartu systému.

Předpoklady

  • Systém se systémem Linux
  • Přístup k příkazovému řádku/oknu terminálu
  • Uživatelský účet s oprávněními root nebo sudo

Přehled příkazů Crontab

Pomocí crontab máte plnou kontrolu nad tím, kdy a jak jsou úlohy prováděny. Použijte crontab nastavit čas provádění úlohy na minutu, aniž by bylo nutné v úloze opakovat smyčku a načasovat logiku.

crontab má nízké požadavky na prostředky, protože si nerezervuje systémovou paměť, když není spuštěn.

Crontab při spouštění:Spuštění úlohy cronu při spouštění

Otevřete seznam úloh cron pomocí následujícího příkazu:

crontab -e

Pokud máte nainstalovaných více textových editorů, systém vás vyzve k výběru editoru, kterým chcete aktualizovat seznam úloh cron. Pomocí čísla v závorce vyberte preferovanou možnost. Budeme používat výchozí možnost, Nano.

Chcete-li spustit úlohu cron při každém spouštění systému, přidejte řetězec nazvaný @reboot na konec seznamu úkolů. Úloha definovaná tímto řetězcem se spustí při spuštění, ihned po restartu Linuxu.

Při přidávání @reboot použijte následující syntaxi řetězec:

@reboot [path to command] [argument1] [argument2] … [argument n]
@reboot [part to shell script]

Stiskněte Control + X ukončete Nano a poté Y a Enter uložit všechny provedené změny.

Například pokud bychom chtěli mít systémové datum zapsané v souboru s názvem date.txt když se Linux restartuje, přidáme následující řetězec:

@reboot date >> ~/date.txt

Pokud bychom chtěli spustit záložní shell při restartu, přidali bychom:

@reboot /root/backup.sh

Spusťte úlohu Cron při spouštění se zpožděním

Chcete-li spustit úlohu se zpožděním po restartování systému, použijte příkaz sleep při přidávání @reboot řetězec:

@reboot sleep [time in seconds] && [path to job]

Pokud chcete vytvořit textový soubor se systémovým datem pět minut po restartu, přidejte:

@reboot sleep 300 && date >> ~/date.txt

Odstranění příkazu k restartování

Každý @reboot řetězec, který přidáte do seznamu úloh cron, spustí úlohu při každém restartu Linuxu. Pokud již nechcete spouštět úlohu, odeberte ji ze seznamu úloh.

Chcete-li to provést, otevřete seznam úkolů pomocí crontab -e příkaz. Přejděte dolů a zkontrolujte úlohy, které jste přidali.

Chcete-li odebrat úkol ze seznamu, odstraňte příslušný řádek z příslušného řetězce. Stiskněte Control + X ukončete Nano a poté Y a Enter pro uložení změn.


Linux
  1. Jak zkontrolovat dostupnost systému v Linuxu

  2. Jak provést „datum“ uvnitř úlohy Cron Tab?

  3. Jak naplánovat noční restart?

  1. Jak zkontrolovat, zda systém vyžaduje restart

  2. Jak na to:Správa systémových protokolů pomocí Journalctl

  3. Jak vytvořit systémový oddíl EFI?

  1. Jak funguje více spouštěcích zavaděčů na systémovém oddílu Efi?

  2. Jak spustit crontab job každý týden v neděli

  3. Jak spustit program při startu?