Я использую Ubuntu 12.04. Моя проблема в том, что значения ulimit, описанные в limits.conf
не применяются, когда я подключаюсь к моему серверу по SSH с учетной записью без полномочий root. Либо это, либо они применяются и отменяются.
Я добавил соответствующие значения в /etc/security/limits.conf
* soft nofile 64000
* hard nofile 64000
Я не хочу, чтобы это применялось к корню, так что это нормально. Я также добавил session required pam_limits.so
к файлам в /etc/pam.d
. Добавлен к
/etc/pam.d/login
/etc/pam.d/common-session
/etc/pam.d/sshd
/etc/pam.d/su
И я несколько раз перезагружал свой сервер. Однако предел открытия файла всегда отображается как 1024 для мягкого и 4096 для жесткого. Мой .bashrc
и .profile
для рассматриваемого пользователя файлы, похоже, не содержат ничего, что могло бы изменить это значение.
Если я вхожу в систему как root и запускаю команду через su, я получаю ожидаемый ulimit.
su nodeserver
ulimit -n
#result is 64000
Но когда я использую SSH в качестве nodeserver, я получаю значение 4096.
Это в значительной степени то, что здесь происходит, за исключением того, что в моих сценариях запуска, похоже, ничего нет - "открытые файлы" ulimit: управление через limits.conf