红联Linux门户
Linux帮助

open too many files解决办法

发布时间:2008-03-04 16:00:37来源:红联作者:Gifotce
最近在做一个项目,通过WebLogic Java调用Linux下的shell,发现后台经常出现open too many files的报错日志,解决方法如下:

(1)Linux内核对一个文件被打开数有限制,所以我们需要修改一个系统配置文件;

A、改进用户的有关 nofile(可打开的文件描述符的最大数)和nproc(单个用户可用的最大进程数量)

# vi /etc/security/limits.conf

# 添加如下的行

引用:
* soft nproc 2047

* hard nproc 16384

* soft nofile 1024

* hard nofile 65536


B、要使 limits.conf 文件配置生效,必须要确保 pam_limits.so 文件被加入到启动文件中。

查看 /etc/pam.d/login 文件中有:

session required /lib/security/pam_limits.so

(2)WebLogic Java进程对打开文件数也有限制,仅仅系统还不够,还要修改Weblogic的初始化参数脚本./weblogic92/common/bin/commEnv.sh。如下:

引用:
maxfiles=`ulimit -H -n`
if [ "$?" = "0" -a `expr ${maxfiles} : '[0-9][0-9]*$'` -eq 0 ]; then
ulimit -n 1024 (放大它到32768)
fi


经过上述两个参数的修改,重启WebLogic应用及Linux机器,系统没有再报open too many files的错误了。
文章评论

共有 0 条评论