SystemdDoctor
StartLimitBurst= [Unit]

StartLimitBurst= и StartLimitIntervalSec=: предел частоты запусков

Задают предел частоты запусков: не больше StartLimitBurst= попыток за StartLimitIntervalSec=. Превысив предел, unit переходит в состояние failed с результатом start-limit-hit и не запускается до сброса.

Что делает

Это защита от бесконечного цикла перезапусков. Без неё падающая служба крутилась бы вечно, забивая журнал и расходуя ресурсы. Значения по умолчанию — 5 запусков за 10 секунд.

Важная тонкость: параметры живут в секции [Unit], хотя относятся к перезапуску, который настраивается в [Service]. Их часто ставят не туда, и они молча не работают.

Где ставится. В секции [Unit]. Сброс счётчика — командой systemctl reset-failed имя.

Значения

ЗначениеЧто происходит
StartLimitBurst=5число попыток; значение по умолчанию.
StartLimitIntervalSec=10sокно, в котором считаются попытки.
StartLimitIntervalSec=0предел отключён: перезапуск без ограничений.
StartLimitAction=rebootчто делать при достижении предела; по умолчанию ничего.

Пример

Служба, которой позволено больше попыток с паузами.

[Unit]
StartLimitIntervalSec=5min
StartLimitBurst=10

[Service]
Restart=on-failure
RestartSec=15s

Десять попыток за пять минут с паузой в пятнадцать секунд подходят службе, ждущей внешнюю зависимость.

Типичные ошибки

Параметры в секции [Service] не работают: их место — [Unit].

После достижения предела служба не запускается даже вручную: нужен systemctl reset-failed.

Отключение предела вместе с мгновенным перезапуском приводит к бесконечному циклу.

Связанные ошибки

Рядом стоящие параметры

Где важен на практике

Источники

  • systemd.unit(5) официальная документация
    сверено 15 сентября 2026
  • Воспроизведено на тестовой машине, systemd 255 (Ubuntu 24.04) собственная проверка
    сверено 15 сентября 2026