limits.conf (Русский) - ArchWiki

Jump to content

# limits.conf (Русский)

2 languages

- English
- 日本語

From ArchWiki

Перевод этой статьи или раздела не отражает оригинальное содержание.

Причина: Невычитанная копипаста из переводчика DeepL. (Discuss)

Related articles

- cgroups
- Security

`/etc/security/limits.conf` позволяет устанавливать ограничения на ресурсы для пользователей, вошедших в систему через PAM. Это полезный способ предотвратить, например fork-bombs от использования всех системных ресурсов.

Note: Этот файл не влияет на работу системных служб. Для служб systemd лимитом управляют файлы `/etc/systemd/system.conf`, `/etc/systemd/user.conf`, и `/etc/systemd/system/unit.d/override.conf`. Подробности см. на странице systemd-system.conf(5) man page for details.

## Синтаксис

Файл по умолчанию хорошо прокомментирован, но дополнительную информацию можно получить, просмотрев страницу limits.conf(5) man page.

## Рекомендации

### core

Corefiles полезны для отладки, но раздражают при обычном использовании системы. Вам следует установить мягкое ограничение 0 и жесткое ограничение неограниченное, а затем временно повышать ограничение для текущей оболочки с помощью `ulimit -c unlimited` когда вам нужны corefiles для отладки.

    *           soft    core       0           # Запретить генерировать corefiles по умолчанию.
    *           hard    core       unlimited   # Позволяет временно включать core файлы.

### nice

Вы должны запретить всем, кроме root, иметь процессы с минимальной доброжелательностью (-20), чтобы root мог исправить неотзывчивую систему.

    *           hard    nice       -19         # Запретитm пользователям, не являющимся root-пользователями, запускать процесс с минимальным значением.
    root        hard    nice       -20         # Позволяет root запустить процесс на минимальном уровне, чтобы исправить ситуацию, когда система не реагирует на запросы.

### nofile

Это ограничивает количество файловых дескрипторов, которые могут быть открыты в любой момент времени у процесса, принадлежащего указанному домену. Вам может потребоваться увеличить это значение до `8192` для работы некоторых игр. Некоторые приложения баз данных, такие как MongoDB или Apache Kafka, рекомендуют устанавливать `nofile` на `64000` или `128000`[1].

    *           hard    nofile     65535
    *           soft    nofile      8192        # Требуется для запуска некоторых игр.

Warning: Слишком большое или неограниченное значение может привести к поломке некоторых инструментов, например fakeroot.

### nproc

Ограничение nproc очень важно, поскольку оно ограничивает количество раз, которое может повторить бомба-вилка. Однако слишком низкое значение может сделать вашу систему нестабильной или даже непригодной для использования, поскольку новые процессы не смогут создаваться.

Значение `300` слишком мало даже для самых минимальных Window-менеджеров, чтобы запустить больше нескольких настольных приложений и демонов, но часто подходит для серверов без X (на самом деле, `300` это значение, которое факультет компьютерных наук Университета Джорджии использовал для ограничения процессов для студентов на своих Linux-серверах в 2017 году).

Вот пример ограничения nproc для всех пользователей системы:

    *           hard    nproc      2048        # Не позволяйте вилочным бомбам вывести систему из строя.

Обратите внимание, что это значение `2048` всего лишь пример, и вам может понадобиться установить более высокое значение. С другой стороны, вы можете обойтись и более низким значением.

Какое бы значение nproc вы ни установили, не забудьте разрешить пользователю root создавать столько процессов, сколько он захочет; в противном случае вы можете сделать систему неработоспособной, установив обычный лимит nproc слишком низким. Обратите внимание, что эта строка должна идти после глобального hardlimit, а значение ниже (`65536`) является произвольным.

    root        hard    nproc      65536       # Предотвращение того, что root не может запустить достаточное количество процессов.

### приоритет

Обычно по умолчанию "niciness" должен быть равен 0, но вы можете установить для отдельных пользователей и групп разные приоритеты по умолчанию с помощью этого параметра.

    *           soft    priority   0           # Установите приоритет по умолчанию на нейтральную niceness.

Category:

- Authentication (Русский)

Hidden category:

- Pages or sections flagged with Template:Bad translation (Русский)