23 мая 2026Руководства
Как настроить cron-задачи на Linux-сервере
Синтаксис cron, редактирование crontab, примеры расписания и логирование на VPS.

Cron — стандартный планировщик Linux для запуска скриптов по расписанию: резервные копии, очистка кэша, проверка сертификатов. Руководство по использованию cron на сервере Hiddence.
Синтаксис cron
В каждой строке пять полей времени и команда:
bash
# ┌──────── минута (0-59)
# │ ┌────── час (0-23)
# │ │ ┌──── день месяца (1-31)
# │ │ │ ┌── месяц (1-12)
# │ │ │ │ ┌─ день недели (0-7, 0 и 7 = воскресенье)
# │ │ │ │ │
# * * * * * команда
# Каждый день в 3:00:
0 3 * * * /usr/local/bin/backup.sh
# Каждые 15 минут:
*/15 * * * * /usr/local/bin/check.shРедактирование crontab
crontab -e для текущего пользователя. Системные задачи — через root:
bash
# Crontab пользователя
crontab -e
# Crontab root
sudo crontab -e
# Список задач
crontab -l
sudo crontab -lЧастые примеры
- 0 2 * * * — ежедневное резервное копирование в 2:00
- 0 */6 * * * — каждые 6 часов
- 0 0 * * 0 — каждое воскресенье в полночь
- */5 * * * * — каждые 5 минут (осторожно с нагрузкой)
- @reboot /path/script.sh — после перезагрузки
- @daily /usr/bin/certbot renew --quiet — проверка SSL
Логи и отладка
Перенаправляйте вывод в файл, чтобы видеть ошибки:
bash
0 3 * * * /usr/local/bin/backup.sh >> /var/log/backup-cron.log 2>&1
# Логи cron в системе:
grep CRON /var/log/syslog # Ubuntu
grep CRON /var/log/cron # CentOSСоветы
- Используйте абсолютные пути к скриптам
- Проверяйте скрипт вручную перед добавлением в cron
- MAILTO=email в crontab для уведомлений об ошибках
- Для сложных сценариев рассмотрите systemd timers
- Не запускайте тяжёлые задачи каждую минуту