Cron & Scheduling

создать таймер systemd · По календарю или после загрузки

Соберите .timer для существующей службы и проверьте его на целевой системе Linux.

создать таймер systemd

Условие запуска

Конфигурация и проверка

Данные обрабатываются в этом браузере и не отправляются на сервер.

Параметры

Введите базовое имя существующей службы.

Резервная копия по будням в 09:00 и запуск через пять минут после загрузки используют разные точки отсчёта. Создать таймер systemd проще, когда OnCalendar отделён от монотонного таймера и не подменяется строкой cron.

Эта страница помогает создать таймер systemd в виде отдельного .timer. Службу она не выдумывает: рядом с конфигурацией показывает смысл правил и команду systemd-analyze calendar для проверки на целевом сервере.

Зачем создать таймер systemd здесь

Способ отсчёта времени остаётся видимым в результате.

Различать два типа отсчёта

OnCalendar следует календарным часам. OnBootSec отсчитывает время от загрузки, а OnUnitActiveSec — от последней активации службы, не от завершения работы.

Две временные шкалы показывают фиксированное время и интервал после загрузки.

Не выдавать непроверенное за верное

Браузер распознаёт только простые значения и стандартные сокращения. Для списков, шагов и часовых поясов выводится отметка о неполной проверке и команды Linux.

Рядом с конфигурацией показаны статус локальной проверки и команда терминала.

Три проверки перед запуском

01

Выберите точку отсчёта

daily означает полночь, а относительный режим по умолчанию ждёт 5min после загрузки. OnUnitActiveSec считает от предыдущей активации службы.

  • На этой странице режимы не объединяются.
02

Укажите существующую службу

Введите базовое имя без .timer или .service. Пример, шаблон и очистка сначала показывают изменения; после применения доступна одна отмена.

  • Пустое имя не создаёт файл для скачивания.
03

Проверьте на целевой машине

Локально проверяется только простая часть синтаксиса. Для полного OnCalendar запустите systemd-analyze calendar, после сохранения — verify и status.

  • При выключенной автоматике используйте Ctrl/Cmd + Enter.

Что попадёт в файл таймера

Календарный запуск

Доступны daily, hourly, будни в 09:00 или одно выражение OnCalendar. Persistent может восполнить пропущенный календарный запуск.

Запуск после загрузки

OnBootSec задаёт первый запуск, а необязательный OnUnitActiveSec — повторение от последней активации службы.

Отдельный .timer

Unit указывает на одноимённую .service; при необходимости добавляется случайная задержка, а Install привязывает таймер к timers.target.

Ограничения перед установкой

Служба должна существовать
Страница не создаёт ExecStart и файл .service. Убедитесь, что нужная служба есть на целевой машине.
Локальная проверка неполная
Списки, шаги, конец месяца и часовые пояса не проверяются полностью. Решающее значение имеет systemd-analyze на целевом Linux.
Cron — другой язык расписаний
Пять полей cron отклоняются. Persistent не действует для относительного таймера, а стандартный AccuracySec допускает минутное окно.
Один системный таймер за раз
OnCalendar здесь не смешивается с монотонными триггерами; календарное поле принимает только одну строку. Пользовательские юниты и OnStartupSec не поддерживаются.
Команды не запускаются
Страница не выполняет systemctl, не записывает юнит на сервер и не обещает точное время следующего запуска. Проверьте сохранённый таймер и существующую службу в целевой системе Linux.

Вопросы о том, как создать таймер systemd

Почему нужны и .timer, и .service?

Таймер определяет момент запуска; служба содержит команду и окружение. Здесь создаётся только таймер.

Что на самом деле делает Persistent=true?

Пропущенный календарный запуск может быть восполнен после повторной активации таймера. Для OnBootSec это не механизм повторения.

Как проверить выражение OnCalendar?

Выполните systemd-analyze calendar на целевой системе и посмотрите нормализованный вид и ближайшие совпадения.

Почему команда работает в терминале, но не запускается по таймеру?

Окружение службы отличается от интерактивной оболочки. Проверьте абсолютные пути, переменные и журнал.

Почему служба запустилась раньше календарного срока?

Причиной может быть уже наступивший OnBootSec либо восполнение пропущенного запуска через Persistent.

Неожиданная дата запуска?

Создать таймер systemd сейчас

Укажите службу, скачайте .timer и проверьте его на Linux перед включением.

Конфигурация создаётся в браузере и не отправляется на сервер.