操作系统:rhel 6 centos6上也存在这样的问题
su切换到用户user1报无法设置用户ID:资源暂时不可用错误
问题是出在:在/etc/security/limits.d目录下,rhel6和centos6下面多了个文件:90-nproc.config
此文件内容:
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
* soft nproc 1024
这里限制了1024呀,注释或者将1024值改大,保存退出,立即生效,再试试su到user1,问题解决。不过为什么加这个文件,没弄清楚,在rhel 5上有这个目录,但是没有这个文件
当然你的/etc/security/limits.conf配置的用户允许打开的文件句柄数也不能太小,是吧
cat /etc/security/limits.conf
user1 soft nproc 4094
user1 hard nproc 32768
user1 soft nofile 2048
user1 hard nofile 131072
也可以使用ulimit –a查看相关的配置
==========================================================================================================================
Linux下运行tomcat出现java.net.SocketException: 打开的文件过多错误
tomcat报“too many open files”的错误,解决办法如下:
报此错误是由于系统内核对进程打开文件个数的限制,默认为1024
[root@localhost ~]# ulimit -n
1024
修改参数,增大这个限制:
#vi /etc/security/limits.conf
增加下面这一行内容:
* - nofile 65535
将限制增加到65535
注意"nofile"项有两个可能的限制措施。就是项下的hard和soft。 要使修改过得最大打开文件数生效,必须对这两种限制进行设定。 如果使用"-"字符设定, 则hard和soft设定会同时被设定。
硬限制表明soft限制中所能设定的最大值。 soft限制指的是当前系统生效的设置值。 hard限制值可以被普通用户降低。但是不能增加。 soft限制不能设置的比hard限制更高。 只有root用户才能够增加hard限制值。
重启机器使修改配置生效
[root@localhost ~]# ulimit -n
65535
-----------------------------------------------------------------------------------------------
ps -fe|wc -l 查看打开的进程数