我在/etc/security/limits.conf有以下几行
* soft nofile 32768 * hard nofile 65536 root soft nofile 32768 root hard nofile 65536
以下每个文件都需要pam_limits.so文件。
/etc/pam.d/common-session /etc/pam.d/cron /etc/pam.d/login /etc/pam.d/sshd /etc/pam.d/su /etc/pam.d/sudo
ulimit -nlogin后(以及在启动时启动的服务)显示1024仍然。
我错过了什么?
对于init.d中的服务,您不能使用/etc/security/limits.d inittab不读取这些文件,而是基于pam.d,它在初始化启动脚本中没有使用。 所有初始化启动脚本源/etc/init.d/functions所以所有的服务,你可以破解脚本和设置限制在那里。 当我需要{httpd,一些brokenass oracle stuf}等等时,我曾经为特定的服务攻击/ etc / sysconfig希望这有助于。
Ubuntu 14.04
必须在/etc/security/limits.conf中添加'hard'和'soft'条目,以便pam识别rtprio(-r)和memlock(-l)的设置。
你有没有检查你在/etc/security/limits.d/没有其他configuration文件?
你有尝试增加ulimit吗?
$ ulimit -n 4096 $ ulimit -n 4096
保存之后,您必须重新login。 启动一个shell是不够的,它必须是一个loginshell。
如果你是root用户,执行下面的命令
ulimit -SHn 65535
如果要永久性地设置它,特别是对于特定的用户,请更改/etc/security/limits.conf文件以具有以下行(假设user = www-data)
例如
www-data hard nofile 65535 www-data soft nofile 65535
并确保从/etc/pam.d下的不同文件中取消对pam_limits.so的注释,例如sudo,login,sshd,…按照上面已经完成的步骤执行。
最后重启你的系统
尝试检查/var/log/auth.log
我已经find了我在那里的问题的答案。 在我的情况下,由于导致使用默认值(1024)的错误,未设置限制。