首页 > linux - too many open files?

linux - too many open files?

系统都已经配置了:

/etc/security/limits.conf
*               soft    nofile          65000
*               hard    nofile          65000

/etc/sysctl.conf
net.ipv4.ip_local_port_range = 1024 65000

ulimit -n
//output 6500

现有一个很奇怪的现在,有个程序还是会报 “too many open files”,跟了一个下午发现,重启系统后,自动启动的进程的max open files还是默认的1024:

cat /proc/751/limits
Max open files            1024                 4096                 files

但是手动重启程序后,恢复:

cat /proc/1432/limits
Max open files            65000                 65000                 files 

是不是这些进程启动级别高,以至于启动时系统配置还没生效?哪里没有配置正确?


你用的是不是Ubuntu下的upstart启动的进程?可能和Upstart的设置有关。
这里有报过upstart的这个BUG,不过好像它不承认这是BUG,因为本来limits.conf就只对login session生效:https://bugs.launchpad.net/ubuntu/+source/upstart/+bug/938669
解决方案:http://bryanmarty.com/blog/2012/02/10/setting-nofile-limit-upstart/

【热门文章】
【热门文章】