SUSE LINUX系统文件句柄限制的修改
在SUSE Linux下部署应用的时候,有时会遇到“Socket/File: Can’t open so many files”的问题,这其实是SUSE Linux系统的文件句柄限制造成的,一般系统默认都是允许打开1024个文件,作为一台生产环境的应用服务器,是很容易就达到这个默认值的,因此我们需要把这个值改大一些. 下面我们看如何修改: 1、先查看系统默认值 2、修改系统默认文件句柄限制 #vi /etc/security/limits.conf 如果修改某个用户的文件句柄限制数量,可以增加如下两句: 你的用户名 soft nofile 2048 你的用户名 hard nofile 65536 如果将所有用户的文件句柄限制统一修改,可以增加如下两句: * soft nofile 2048 * hard nofile 65536 注意wq保存退出. 我们添加的有soft, hard两种限制:硬限制是实际的限制,而软限制是warnning限制,只会做出warning.修改完保存重启shell即可(有些系统可能需要重启系统,SUSE LINUX是不用的),再用ulimit -a 查看一下设置发现已成功. 如果要修改file-max和file-nr的值,需要通过vi /etc/sysctl.conf进行编辑修改,使用sysctl -p使其生效. 对于一般的应用来说(Apache、系统进程)1024完全足够使用,但是对于squid、mysql、java等单进程处理大量请求的应用来说就不够用了.那么如何知道当前进程打开了多少个文件句柄呢?我们可以通过这个来查看: 左边一列是打开的文件句柄数量,第二列是进程ID号.如果系统并发特别大,文件句柄数很有可能会超过1024,这时候我们就要调整系统参数,以适应实际应用的变化. 补充: 本文出自 “滴水穿石” 博客,谢绝转载! |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |