Spôsoby platby Abuse

Cron v Linuxe: čo to je?

26.02.2023, 13:13

Cron je nástroj na plánovanie úloh v operačnom systéme Linux. Umožňuje automatické spúšťanie skriptov alebo príkazov v určitých časoch, intervaloch alebo pri určitých udalostiach.

Ako ho používať?

Ak chcete používať program Cron, musíte vytvoriť súbor crontab, ktorý obsahuje zoznam úloh a časové intervaly, kedy sa majú vykonať. Každá úloha v súbore crontab je reťazec, ktorý pozostáva z piatich polí oddelených medzerami:

*     *     *     *     *  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á ľubovoľnú hodnotu, napríklad ak pole minutes obsahuje *, úloha sa bude spúšťať každú minútu. Ak chcete pre pole nastaviť konkrétnu hodnotu, napríklad každý deň o tretej hodine ráno, mali by ste napísať 0 3 * * * *.

Ak chcete vytvoriť alebo upraviť súbor crontab, použite príkaz crontab -e. Každý používateľ môže mať svoj vlastný súbor crontab, ako aj systémový súbor /etc/crontab, ktorý obsahuje úlohy spúšťané ako používateľ root.

Existuje príkaz cronjob, ktorý umožňuje spúšťať úlohy vo vnútri kontajnerov Docker. Funguje podobne ako crontab, ale úlohy sa môžu spúšťať vnútri kontajnera namiesto hostiteľského systému.

Používanie programu Cron: algoritmus krok za krokom

Ak chcete začať používať Cron v Linuxe, postupujte podľa nasledujúcich krokov:

1. Otvorte terminál a zadajte príkaz crontab -e. Tým sa otvorí súbor crontab pre aktuálneho používateľa.

2. Do súboru crontab pridajte úlohu podľa vyššie opísaného formátu poľa. Ak napríklad chcete každú hodinu spustiť skript every_hour.sh, pridajte riadok 0 * * * * * * /path/to/every_hour.sh.

3. Uložte zmeny a zatvorte súbor.

4. Pomocou príkazu crontab -l overte, či bola úloha pridaná do programu crontab. Zobrazí sa zoznam všetkých úloh pridaných do crontab.

5. Overte, či úloha beží podľa plánu pomocou príkazu tail -f /var/log/syslog. Zobrazí sa výstup týkajúci sa vykonávania úlohy.

6. Ak chcete úlohu z crontab odstrániť, použite príkaz crontab -r.

Je potrebné mať na pamäti niekoľko dôležitých bodov:

  • do crontab môžete pridávať skripty aj príkazy. Ak však chcete spustiť skript, uistite sa, že má oprávnenie na spustenie(chmod +x /cesta/do/skript.sh).
  • ak chcete, aby sa úloha spúšťala s právami používateľa root, použite príkaz sudo crontab -e na otvorenie súboru crontab pre používateľa root.
  • uistite sa, že príkazy a skripty, ktoré spúšťate, sú na správnom mieste a majú správne oprávnenia na čítanie a vykonávanie.

Všimnite si, že čas zadaný v súbore crontab bude zodpovedať času na serveri, na ktorom je spustený program Cron. Ak používate vzdialený server, uistite sa, že je čas na serveri správne nakonfigurovaný.