Генератор Cron-выражений
Что такое Cron и зачем он нужен
Cron — это стандартный планировщик задач в Unix-подобных операционных системах (Linux, macOS, FreeBSD). Он позволяет автоматически запускать команды и скрипты по заданному расписанию: от ежеминутного выполнения до запуска раз в год. Название происходит от греческого слова chronos — время.
Демон cron
Cron работает как фоновый процесс (демон), который постоянно запущен в системе. Каждую минуту он проверяет таблицу расписаний (crontab) и запускает задачи, время которых совпало с текущим моментом. Управление через команду crontab -e.
Файл crontab
Каждый пользователь системы имеет свой файл crontab, содержащий расписание задач. Каждая строка — это одна задача: пять полей расписания и команда для выполнения. Системный crontab находится в /etc/crontab и поддерживает шестое поле — имя пользователя.
Современные альтернативы
Помимо классического cron, существуют systemd timers в Linux, launchd в macOS, а также облачные планировщики: Kubernetes CronJob, AWS EventBridge, GitHub Actions cron. Все они используют тот же формат cron-выражений.
Где используются cron-задачи
Cron-расписания — универсальный механизм автоматизации, применяемый во всех областях IT: от домашнего сервера до крупных облачных инфраструктур.
DevOps и CI/CD
Автоматический деплой, ротация логов, очистка временных файлов, перезапуск сервисов. GitHub Actions, GitLab CI и Jenkins используют cron-синтаксис для расписания пайплайнов.
Резервное копирование
Ночные бэкапы баз данных (pg_dump, mysqldump), инкрементальные копии файловой системы (rsync, borgbackup), синхронизация с облачным хранилищем (rclone, s3cmd).
Аналитика и отчёты
Ежедневная агрегация данных, генерация PDF-отчётов, отправка дайджестов по email. ETL-процессы и обновление дашбордов по расписанию.
Безопасность
Ротация SSL-сертификатов (certbot renew), обновление списков блокировки, сканирование на уязвимости (ClamAV, rkhunter), проверка целостности файлов.
Уведомления и рассылки
Отправка напоминаний, email-рассылок, push-уведомлений. Проверка состояния сервисов (healthcheck) и оповещение администраторов при сбоях.
Веб-разработка
Очистка кэша, обновление поисковых индексов, генерация sitemap.xml, пересборка статических сайтов. WordPress использует wp-cron для отложенных публикаций.
Синтаксис cron/ полное руководство
Cron-выражение состоит из пяти полей, разделённых пробелами. Каждое поле определяет, в какой момент времени должна запуститься задача. Поля поддерживают числа, диапазоны, списки и шаговые значения.
Общий формат
┌──────── минута (0-59)
│ ┌────── час (0-23)
│ │ ┌──── день месяца (1-31)
│ │ │ ┌── месяц (1-12)
│ │ │ │ ┌ день недели (0-6, 0=воскресенье)
* * * * * командаСпециальные символы
*Любое значение. * * * * * — каждую минуту.
,Список значений. 1,15 — 1-го и 15-го числа.
-Диапазон. 1-5 — с понедельника по пятницу.
/Шаг. */5 — каждые 5 единиц.
Подробно о каждом поле
Значения 0-59. Пример: 30 — на 30-й минуте, 0,30 — каждые полчаса, */10 — каждые 10 минут.
Значения 0-23 (24-часовой формат). Пример: 9 — в 9 утра, 0 — в полночь, 9-17 — каждый час с 9 до 17.
Значения 1-31. Пример: 1 — первое число, 1,15 — 1-го и 15-го, */2 — каждые 2 дня.
Значения 1-12 или JAN-DEC. Пример: 1,4,7,10 — ежеквартально, */3 — каждые 3 месяца.
Значения 0-6 (0 и 7 = воскресенье) или SUN-SAT. Пример: 1-5 — будни, 0,6 — выходные.
Совет: если указаны одновременно день месяца и день недели (оба не *), задача выполнится в оба момента (по ИЛИ). Например, 0 9 15 * 1 запустится 15-го числа И каждый понедельник.
Важно: cron не гарантирует точность до секунды. Минимальный интервал — 1 минута. Если нужна точность в секундах, используйте systemd timers с параметром OnCalendar или sleep в скрипте.
Примеры cron-выражений
Самые востребованные расписания для серверных задач, бэкапов, мониторинга и автоматизации. Нажмите на пример, чтобы скопировать выражение.
* * * * *Каждую минуту
Мониторинг, healthcheck, очереди
*/5 * * * *Каждые 5 минут
Проверка состояния сервисов
0 * * * *Каждый час (в :00)
Сбор метрик, обновление кэша
0 0 * * *Каждый день в полночь
Ночные бэкапы, ротация логов
0 6 * * *Каждый день в 6:00
Утренние отчёты, рассылки
0 9 * * 1-5Будни в 9:00
Рабочие задачи, дейли-статус
0 0 * * 0Каждое воскресенье в полночь
Еженедельная очистка, отчёты
0 0 1 * *Первое число каждого месяца
Месячные отчёты, обновление данных
0 3 * * 0Воскресенье в 3:00
Полный бэкап, обслуживание БД
30 4 1,15 * *1-го и 15-го в 4:30
Формирование зарплатных ведомостей
0 */6 * * *Каждые 6 часов
Синхронизация данных, обновление индексов
0 0 1 1 *1 января в полночь
Ежегодное архивирование, обнуление счётчиков
Советы и лучшие практики
Рекомендации от системных администраторов и DevOps-инженеров для надёжной работы cron-задач.
1Логируйте вывод задач
Всегда перенаправляйте stdout и stderr в лог-файл. Без этого ошибки пропадут бесследно. Используйте: /path/script.sh >> /var/log/myjob.log 2>&1. Настройте ротацию логов через logrotate, чтобы диск не переполнялся.
2Используйте полные пути
Cron запускает команды в минимальном окружении без вашего PATH. Вместо python script.py пишите /usr/bin/python3 /home/user/script.py. Либо задайте PATH в начале crontab.
3Защищайтесь от пересечения
Если задача выполняется дольше интервала, следующий запуск может конфликтовать с предыдущим. Используйте flock для блокировки: flock -n /tmp/job.lock /path/script.sh. Это гарантирует, что одновременно работает только одна копия.
4Учитывайте часовой пояс
Cron использует системное время сервера. Если сервер в UTC, а вам нужно московское время (MSK = UTC+3), вычитайте 3 часа. Либо установите переменную CRON_TZ=Europe/Moscow в crontab (поддерживается в Vixie cron).
5Мониторьте выполнение
Используйте сервисы вроде Healthchecks.io или Dead Man's Snitch: задача отправляет HTTP-запрос по завершении, а сервис уведомляет вас, если запуск не произошёл. Это критично для бэкапов и важных ночных процессов.
6Тестируйте перед деплоем
Перед добавлением в crontab запустите скрипт вручную от имени того же пользователя: sudo -u www-data /path/script.sh. Проверьте права доступа, переменные окружения и зависимости. Распространённая ошибка: скрипт работает от root, но падает от www-data.
Как пользоваться генератором
Простая инструкция для создания cron-расписания за несколько секунд.
Выберите интервалы
Используйте выпадающие списки для каждого из пяти полей: минута, час, день, месяц, день недели. Или перейдите во вкладку «Пресеты» для готовых расписаний.
Проверьте описание
Генератор автоматически переводит cron-выражение на русский язык. Убедитесь, что описание соответствует вашим ожиданиям.
Просмотрите запуски
В блоке «Ближайшие 5 запусков» отображаются конкретные даты и время. Это поможет убедиться, что расписание корректно.
Скопируйте результат
Нажмите «Копировать» и вставьте выражение в crontab -e, Kubernetes CronJob, GitHub Actions или любой другой планировщик.
Наш генератор также полезен при работе с API rate limit, настройке автоматизированного тестирования и планировании задач в DevOps-конвейерах. Если вы работаете с серверным мониторингом, обратите внимание на сетевой калькулятор.
Часто задаваемые вопросы
Был ли этот калькулятор полезен?
Инструмент справочный — не заменяет эксперта
Только для информационных целей. Все расчёты, результаты и данные, предоставляемые инструментом, носят исключительно ознакомительный и справочный характер. Они не являются профессиональной консультацией — медицинской, юридической, финансовой, инженерной или иной.
Точность результатов. Калькулятор основан на общепринятых формулах и методиках, однако фактические результаты могут отличаться в зависимости от индивидуальных условий, исходных данных и применяемых стандартов. Мы не гарантируем полноту, точность или актуальность приведённых расчётов.
Профессиональные решения — медицинские, финансовые, инженерные — должны приниматься только после консультации с квалифицированным специалистом. Не используйте автоматический расчёт как единственное основание для важных решений.
Ограничение ответственности. Авторы и разработчики сервиса не несут ответственности за прямой или косвенный ущерб, возникший из-за использования данных расчётов. Пользователь принимает на себя всю ответственность за интерпретацию результатов.
Похожие калькуляторы
YAML валидатор и форматтер
Онлайн проверка и форматирование YAML-файлов. Валидация синтаксиса, конвертация YAML ↔ JSON, подсветка ошибок с номерами строк.
/yaml-validatorКалькулятор размера Docker-образа
Оценка размера Docker-образа по базовому образу и зависимостям. Сравнение base images, советы по оптимизации и multi-stage сборке.
/razmer-docker-obrazaКонвертер Unix Timestamp ↔ дата
Онлайн конвертер Unix Timestamp в дату и обратно. Текущий Unix-таймстемп, конвертация с учётом часовых поясов России, форматы ISO 8601 и RFC 2822.
/konverter-unix-timestampКалькулятор SLA / стоимости простоя
Расчёт допустимого простоя по SLA (99.9% → минуты в год). Калькулятор стоимости даунтайма и обратный расчёт SLA по фактическому простою.
/kalkulyator-sla-uptimeГенератор Cron выражений (Crontab)
Создать и расшифровать Cron выражения онлайн. Удобный генератор расписания для скриптов и серверов. Перевод на понятный язык.
/cron-expression-generatorCI/CD калькулятор: пайплайн, кэш, тесты, раннеры, деплой
Комплексный CI/CD калькулятор: оптимизация пайплайна (критический путь, параллелизация), кэш сборки (hit ratio, ROI), анализ тестов (flaky, шардирование), артефакты (Docker, npm), раннеры (автоскейлинг) и стратегии деплоя (Blue-Green, Canary, Rolling).
/ci-cd-calculatorDevOps калькулятор: DORA-метрики, SLA, CI/CD пайплайн, мониторинг
Комплексный DevOps калькулятор. DORA-метрики (deployment frequency, lead time, MTTR, change failure rate), расчёт SLA и доступности (uptime 99.9–99.999%), размер инфраструктуры (CPU/RAM/диск), мониторинг и алертинг, оптимизация облачных затрат (Reserved vs Spot), анализ CI/CD пайплайна.
/devops-calculatorКалькулятор контейнеров (Docker)
Расчёты контейнеров: ресурсы, образы, Docker Compose, реестр, оркестрация, стоимость
/container-calculatorКалькулятор технического долга: объём, SQALE, рефакторинг
Комплексный калькулятор технического долга: оценка объёма в часах и рублях, расчёт процентной ставки (стоимость бездействия), матрица приоритизации (impact vs effort), метрики качества кода (цикломатическая сложность, дупликация, покрытие тестами), план рефакторинга по спринтам, SQALE рейтинг A-E.
/technical-debt-calculatorКалькулятор умного дома
Расчёт бюджета умного дома: устройства, совместимость экосистем, стоимость.
/smart-home-calculatorГенератор Cubic Bezier (CSS transition)
Интерактивный генератор кривых Безье для CSS анимаций. Визуальная настройка плавности переходов, пресеты (ease, linear) и копирование кода.
/cubic-bezierКалькулятор код-ревью: время, размер PR, дефекты, нагрузка
Комплексный калькулятор код-ревью: оценка времени проверки кода, анализ размера PR (XS/S/M/L/XL), покрытие ревью и bus factor, плотность дефектов и escape rate, нагрузка команды ревьюеров, метрики качества (churn, rework, first-pass yield).
/code-review-calculatorКалькулятор теории цвета: гармония, конвертер, палитры, смешивание, дальтонизм
Комплексный инструмент для работы с цветом: цветовые гармонии (комплементарная, аналогичная, триадная, тетрадная), конвертер HEX/RGB/HSL/HSV/CMYK, генератор палитр (монохроматическая, shades, tints, tones), смешивание цветов (аддитивное/субтрактивное), симулятор дальтонизма и анализ цветовой температуры.
/color-theory-calculatorКалькулятор подсетей CIDR/IP
Онлайн калькулятор подсетей IPv4. Расчёт маски подсети, диапазона IP-адресов, количества хостов по CIDR-нотации. Бесплатный инструмент для сетевых инженеров.
/kalkulyator-podsetej-cidrКалькулятор градиентов и интерполяции цветов
Генератор плавных переходов между цветами. Создайте CSS градиент онлайн, получите коды цветов (HEX/RGB) и настройте количество шагов.
/color-gradient