змінювати та застосовувати limit.conf без перезавантаження


13

Я додав рядок, /etc/security/limits.confщоб збільшити кількість відкритих файлів.

*    hard nofile 4096
root hard nofile 16384

Однак, коли я запускаю, ulimit -nвін каже 1024, що є значенням за замовчуванням. Я зробив вихід та вхід, але все ще бачу 1024. Як я можу застосувати зміни?

Відповіді:


7

Якщо ви користуєтесь bash, ulimit -nвідображатиметься лише м'яка межа. Щоб отримати жорстку межу, вам потрібно це зробити ulimit -Hn.

У моїй системі я бачу таке:

$ ulimit -n
1024
$ ulimit -Hn
4096

15

Зміни, внесені ulimitкомандою:

$ ulimit -n 4096
$ ulimit -Hn 16384

застосовуватиметься лише до поточного користувача та сеансу. Щоб зробити його постійним, вам слід змінити /etc/security/limits.conf, додавши свої обмеження:

* soft nofile 4096
* hard nofile 16384

Однак підстановка *не застосовуватиметься до rootкористувача. Для цього потрібно чітко вказати це:

* soft nofile 4096
* hard nofile 16384
root soft nofile 4096
root hard nofile 16384

Ці обмеження будуть застосовані після перезавантаження .

Якщо ви хочете застосувати зміни без перезавантаження , змініть /etc/pam.d/common-session, додавши цей рядок в кінці файлу:

session required pam_limits.so

При наступному вході ви повинні побачити оновлені ліміти, ви можете перевірити їх (м'які та жорсткі межі):

$ ulimit -a
$ ulimit -Ha

1
У мене виникло питання з таким підходом, який був насправді дивним. Я використовую Ubuntu 14 і ввімкнено pam_limits.soв /etc/pam.d/common-session. Я налаштував у /etc/security/limits.confкористувачеві x жорсткі та м'які обмеження для nofile64000. sudo -u xПотім ulimit -aмені показує, що зміни не застосовувалися. Я зрозумів , що suі sudoмають різні конфігурації Пем так, щоб змусити її працювати належним чином мені необхідно включити pam_limits.soв систему /etc/pam.d/common-session-noninteractive. Якщо вам цікаво, що таке випадок використання - я використовую ansible і sudo, щоб змінити користувача.
хахчо

Чомусь мені довелося додати це, щоб /etc/pam.d/common-session-noninteractiveвоно працювало.
Суміт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.