Cron – automatické úlohy na VPS
Jak na VPS naplánovat skript nebo příkaz, aby se spouštěl sám v daný čas.
2 min čtení·Aktualizováno 28. října 2026
Cron spouští příkazy podle plánu – zálohy, čištění logů, pravidelné skripty. Na Debianu a Ubuntu bývá předinstalovaný; jestli běží, ověříš příkazem systemctl status cron (když chybí: apt install -y cron).
Úprava plánu
crontab -e
Poprvé si vybereš editor (nejjednodušší je nano). Každý řádek je jedna úloha: pět časových údajů a příkaz.
# minuta hodina den měsíc den_v_týdnu příkaz
30 3 * * * /usr/local/bin/zaloha.sh
| Zápis | Kdy se spustí |
|---|---|
*/5 * * * * | každých 5 minut |
0 * * * * | každou celou hodinu |
30 3 * * * | každý den ve 3:30 |
0 4 * * 1 | každé pondělí ve 4:00 |
0 0 1 * * | první den v měsíci o půlnoci |
@reboot | po každém startu VPS |
Výpis plánu: crontab -l. Čas se řídí časovým pásmem VPS. Změníš ho příkazem timedatectl set-timezone Europe/Prague a pak restartuj cron (systemctl restart cron).
Na co si dát pozor
- Plné cesty. Cron má jen základní
PATH, piš proto třeba/usr/bin/nodemístonode(cestu zjistíš příkazemwhich node). - Znak % má v crontabu zvláštní význam, piš ho jako
\%(např.date +\%F). - Výstup ukládej do logu, jinak se o chybách nedozvíš:
30 3 * * * /usr/local/bin/zaloha.sh >> /var/log/zaloha.log 2>&1 - Skript musí být spustitelný (
chmod +x) a na prvním řádku mít#!/bin/bash. - Cron začíná v domovské složce – ve skriptu se nejdřív přepni, kam potřebuješ (
cd /opt/aplikace).
Proběhla úloha?
journalctl -t CRON --since today
Ukáže, kdy cron úlohy spustil. Co úloha vypsala, najdeš ve svém logu.
Na aplikace, které mají běžet pořád (boti, weby), cron nepoužívej – na to je PM2 nebo služba systemd.
VPS od 299 Kč měsíčně
Vlastní virtuální server s root přístupem pro cokoliv, co potřebujete.