无法更改 ulimit 设置

无法更改 ulimit 设置

我编辑/etc/security/limits.conf

root hard nofile 20000
root soft nofile 10000

并添加了

session required pam_limits.so

/etc/pam.d/common-session/etc/pam.d/common-session-noninteractive

重启后重新登录ulimit -n仍然显示1024。

如果我这样做su并重试ulimit -n,它会显示 10000。但重新登录后,它会返回到 1024。

答案1

检查手册:man limits.conf

这将显示该配置文件中的第一个字段是<domain>或简化的:应用该设置的用户或组。因此,当您root在那里使用时,完全可以预期它仅适用于root其他用户,而不适用于任何其他用户。

尝试以下操作将其应用于所有用户,或者更好地找到一些中间立场并应用于正确的用户/组。

*     hard      nofile     20000

答案2

对于 RHEL 和相关发行版,现在有一个新目录 /etc/security/limits.d

此目录中的文件会默默地覆盖 /etc/security/limits.conf 文件中的信息(!)。

检查 90-nproc.conf,您会发现罪魁祸首。

您可以在此目录中创建新文件 - 它们按数字顺序读取,因此对于应用程序特定值,创建一个名为 95-appname.conf 之类的文件,并将所需的值放入其中。

请注意,任何新文件都必须具有扩展名“.conf”,否则系统将忽略它们。

相关内容