Způsoby platby Abuse

Cron v Linuxu: co to je?

26.02.2023, 13:13

Cron je nástroj pro plánování úloh v operačním systému Linux. Umožňuje automatické spouštění skriptů nebo příkazů v určitý čas, v určitých intervalech nebo při určitých událostech.

Jak jej používat?

Chcete-li používat program Cron, musíte vytvořit soubor crontab, který obsahuje seznam úloh a časové intervaly, kdy mají být provedeny. Každá úloha v souboru crontab je řetězec, který se skládá z pěti polí oddělených mezerami:

*     *     *     *     *  command_to_execute
-     -     -     -     -
|     |     |     |     |
|     |     |     |     +----- day of the week (0 - 6) (Sunday = 0 or 7)
|     |     |     +------- month (1 - 12)
|     |     +--------- day of the month (1 - 31)
|     +----------- hour (0 - 23)
+------------- minutes (0 - 59)

* znamená libovolnou hodnotu, například pokud pole minutes obsahuje *, úloha se bude spouštět každou minutu. Pokud chcete pro některé pole nastavit konkrétní hodnotu, například každý den ve tři hodiny ráno, měli byste napsat 0 3 * * * *.

Chcete-li vytvořit nebo upravit soubor crontab, použijte příkaz crontab -e. Každý uživatel může mít svůj vlastní soubor crontab a také systémový soubor /etc/crontab, který obsahuje úlohy spouštěné jako uživatel root.

Existuje příkaz cronjob, který umožňuje spouštět úlohy uvnitř kontejnerů Docker. Funguje podobně jako crontab, ale úlohy lze spouštět uvnitř kontejneru místo v hostitelském systému.

Použití příkazu Cron: algoritmus krok za krokem

Chcete-li začít používat příkaz Cron v systému Linux, postupujte podle následujících kroků:

1. Otevřete terminál a zadejte příkaz crontab -e. Tím se otevře soubor crontab pro aktuálního uživatele.

2. Do souboru crontab přidejte úlohu podle výše popsaného formátu pole. Chcete-li například každou hodinu spustit skript every_hour.sh, přidejte řádek 0 * * * * * * /path/to/every_hour.sh.

3. Uložte změny a zavřete soubor.

4. Pomocí příkazu crontab -l ověřte, zda byla úloha přidána do crontab. Zobrazí se seznam všech úloh přidaných do crontab.

5. Ověřte, zda úloha běží podle plánu, pomocí příkazu tail -f /var/log/syslog. Zobrazí se výstup související s prováděním úlohy.

6. Pokud chcete úlohu z crontab odstranit, použijte příkaz crontab -r.

Je třeba mít na paměti několik důležitých bodů:

  • do crontab můžete přidávat skripty i příkazy. Pokud však chcete spustit skript, ujistěte se, že má oprávnění ke spuštění(chmod +x /path/to/script.sh).
  • pokud chcete, aby se úloha spouštěla s právy uživatele root, použijte příkaz sudo crontab -e, který otevře soubor crontab pro uživatele root.
  • ujistěte se, že spouštěné příkazy a skripty jsou ve správném umístění a mají správná práva pro čtení a spuštění.

Všimněte si, že čas zadaný v souboru crontab bude odpovídat času na serveru, na kterém je spuštěn Cron. Pokud používáte vzdálený server, ujistěte se, že je čas na serveru správně nakonfigurován.