使用 CentOS 6.6
我/etc/security/limits.conf
已经设置了以下内容:
* soft nofile 65535
* hard nofile 65535
root soft nofile 65535
root hard nofile 65535
我etc/security/limits.d/90-nproc.conf
已经设定了:
* soft nproc 65535
root soft nproc unlimited
* soft nofile 65535
root soft nofile 65535
* hard nofile 65535
root hard nofile 65535
然而由于某种原因,当我注销并以 root 身份登录 SSH(使用 ssh 密钥进行无密码登录)时:
[root@server ~]# ulimit -Hn
4096
[root@server ~]# ulimit -Sn
1024
如何使 ulimit 持久?
答案1
原来是因为我使用UsePAM no
了/etc/ssh/sshd_config
。
出于某种原因,网上的每个教程都建议禁用 PAM,以便禁用没有密钥的密码登录。经过一番研究,我发现这是个糟糕的建议,我不确定为什么这么多教程都推荐它。
禁用 PAM 后,pam_limits
模块永远不会运行,从而导致永远无法从文件中读取限制limits.conf
。