SystemdDoctor
LimitNPROC= [Service]

LimitNPROC= и другие пределы ресурсов процесса

Задаёт предел числа процессов и потоков для пользователя службы. Рядом стоят родственные пределы: размер стека, размер дампа памяти, объём блокируемой памяти.

Что делает

Важная особенность: этот предел считается на пользователя, а не на службу. Если несколько служб работают от одного пользователя, они делят предел между собой. Для ограничения именно службы есть TasksMax=, и он обычно уместнее.

Из родственных пределов чаще прочих нужны два: LimitCORE= — чтобы получить дамп памяти при падении, и LimitMEMLOCK= — для баз данных, блокирующих память от вытеснения.

Где ставится. В секции [Service].

Значения

ЗначениеЧто происходит
LimitNPROC=4096предел процессов и потоков пользователя.
LimitCORE=infinityразрешить дампы памяти при падении.
LimitMEMLOCK=infinityнужен базам, блокирующим память.
LimitSTACK=8Mразмер стека потока.

Пример

Пределы для базы данных и разрешённые дампы при разборе падений.

[Service]
LimitNOFILE=65535
LimitNPROC=8192
LimitMEMLOCK=infinity
LimitCORE=infinity

Дампы стоит разрешать на время разбора: они занимают место, зато дают точную причину падения.

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

Предел считается на пользователя: службы, работающие от одного пользователя, делят его.

Для ограничения самой службы правильнее TasksMax= — он работает через контрольные группы.

При LimitCORE=0 дампы не создаются, и разбор падений становится гаданием.

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

  • status=205/LIMITS в systemdКод 205/LIMITS: systemd не смог применить ограничения ресурсов из Limit*=. Обычно значение недопустимо или превышает жёсткий предел.
  • Failed with result 'core-dump'Состояние core-dump: процесс службы аварийно завершился и сохранил дамп памяти. Как открыть дамп и прочитать трассировку.
  • Too many tasks: упор в предел TasksMaxСлужба не может создать новый процесс: достигнут предел TasksMax. Где он задан и как поднять правильно.

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

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

Источники

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