Cron automatické suštění úloh
-
Automatické spouštění úloh pomocí
cron
cron
umožňuje automatické spouštění příkazů nebo skriptů v nastavený čas.️ Instalace cronu na Arch Linuxu
Arch Linux ve výchozím stavu
cron
neobsahuje. Doporučený balíček jecronie
, který poskytujecrontab
icron
službu podsystemd
.Instalace:
sudo pacman -S cronie
Aktivace služby:
sudo systemctl enable --now cronie
Zkontroluj, že běží:
systemctl status cronie
Pokud služba neběží,
crontab
úlohy se vůbec nebudou spouštět.🧭 Základní syntaxe
Každý řádek v
crontab
má tento formát:# ┌───────────── minuta (0 - 59) # │ ┌───────────── hodina (0 - 23) # │ │ ┌───────────── den v měsíci (1 - 31) # │ │ │ ┌───────────── měsíc (1 - 12) # │ │ │ │ ┌───────────── den v týdnu (0 - 7) (0 a 7 = neděle) # │ │ │ │ │ # │ │ │ │ │ # * * * * * příkaz k provedení
🧮 Význam jednotlivých polí
Pole Rozsah Popis Minuta 0-59
Minuta, kdy se má úloha spustit Hodina 0-23
Hodina ve 24h formátu Den měsíce 1-31
Den v měsíci Měsíc 1-12
Měsíc ( 1
= leden,12
= prosinec)Den týdne 0-7
Den v týdnu ( 0
a7
= neděle)Příkaz — Úplná cesta ke skriptu/příkazu Použij
*
pro “každou hodnotu”.
Např.* * * * *
= každou minutu.
Ukázky použití
# Každý den v 6:00 spustit zálohovací skript 0 6 * * * /home/user/scripts/backup.sh # Každých 15 minut kontrola stavu */15 * * * * /home/user/scripts/check_status.sh
Vytvoření a editace crontabu
Na Arch Linuxu (a většině systémů) upravíš crontab takto:
crontab -e
Tím se otevře crontab v editoru (např.
nano
nebovim
).
🧪 Tipy pro testování
-
Skripty musí být spustitelné:
chmod +x script.sh
-
Používej absolutní cesty (např.
/home/user/scripts/muj.sh
) -
Pro logování výstupu do souboru:
0 6 * * * /home/user/scripts/backup.sh >> /var/log/backup.log 2>&1
Užitečné odkazy
- crontab.guru – snadná vizualizace a kontrola výrazů
-