我已经添加了2行
/etc/security/limits.conf myuser soft nofile 16384 myuser hard nofile 16384
…没有效果:
su - sysctl -p su myuser ulimit -n 1024
无需用户首先login就可以生效,这是很重要的,也就是说,我以root身份为他开始脚本。
将其添加到/etc/security/limits.conf中:
* soft nofile 16384 * hard nofile 16384
并添加这样的东西到/ etc / profile,它应该适用于所有帐户的系统范围:
ulimit -n 16384
然而,为了让ssh和su等工具遵守limits.conf文件,你需要添加以下内容到相应的pam.d文件中,如果它尚不存在的话,也就是说su添加到/etc/pam.d/su和为ssh添加到/etc/pam.d/sshd:
session required /lib/security/pam_limits.so
我相信你的特殊问题可以通过上面的pam.d编辑来解决。
你可以试试这些线路吗?
看看它是如何工作的。
用户.bashrc或其他文件中是否有任何设置。
如果一切都失败了,您的脚本是否允许以myuser的身份执行以下操作:
ulimit -SHn 16384
如果/etc/security/limits.conf中的更改似乎不起作用,请检查/etc/security/limits.d/是否包含限制设置覆盖您的文件。
如果您需要覆盖位于/etc/security/limits.d/中的文件中configuration的限制,最好在该目录中创build自己的文件,并使用比现有文件字母数字sorting更早的名称。 系统按照字母数字顺序读取文件,如果有多个configuration的限制相同,则以后的设置将覆盖较早的设置。