linux too many open files解决方案

这个问题的出现原因是system对程序打开files数量的限制问题。
用 ulimit -a 命令可以查看
[root@5 ~]# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 4096
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 4096
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
可以看出,对open files的限制数是1024,我们可以通过修改这个值来增加可以打开的文件数。
******************************************************************
临时修改
将其改为2048,用 ulimit -n 2048.
当你把open files的值增大到一定程度,你的Too many open files就不会再出现了。
******************************************************************
若要 长久 改变这两个参数值,就要修改/ect/security/limits.conf,在文件中加上两行:

复制代码

代码如下:

* - nofile 65535
* - nproc 65535

:这行设置了每个用户的默认打开文件数为2048。 注意"nofile"项有两个可能的限制措施。就是<type>项下的hard和soft。 要使修改过得最大打开文件数生效,必须对这两种限制进行设定。 如果使用"-"字符设定<type>, 则hard和soft设定会同时被设定。
硬限制表明soft限制中所能设定的最大值。 soft限制指的是当前系统生效的设置值。 hard限制值可以被普通用户降低。但是不能增加。 soft限制不能设置的比hard限制更高。 只有root用户才能够增加hard限制值。
当增加文件限制描述,可以简单的把当前值双倍。 例子如下, 如果你要提高默认值1024, 最好提高到2048, 如果还要继续增加, 就需要设置成4096。
最后用ulimit -a再次查看,open files的值,没什么问题的话,就已经改过来了。
******************************************************************
http://www.linuxso.com/linuxrumen/6217.html
-------------------------------------------------------------
经过以上设置,退出shell再次登录,还是不生效,来点绝的
到//etc/profile下,加入一行ulimit -SHn 51200 (注意里面已经有一条关于ulimit的设置)
到rc.local下,加入一行 ulimit -SHn 51200 (不知这条有没有必要,其实我还没加)
详见 :http://baike.baidu.com/view/4832100.htm
ulimit -S -c 0 > /dev/null 2>&1
这条语句设置了对软件资源和对core文件大小的设置

(0)

相关推荐

  • U盘安装Linux安装报错及解决方案

    最近在学习Linux,偏离软件行业多年的我下定决心回归!这篇文章是我这一个小白的亲身经历,希望能被采纳! 开始按照书中中所讲在自己的机子上装了虚拟机,运行挺好.后来看到交流群里有人自己一台老本装了rh ...

  • linux服务器并webbench攻击解决方案

    首先我来说一下这个被攻击的网站的大概部署状况.这个网站主要是nginx+mysql+php,有两台服务器分别放了web和数据库,web只对外开启了80端口操作系统是centos,而数据库服务器则在内网 ...

  • 关于Linux系统,你可能还不知道的七件事

    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软件.应用程序和网络协议.它支持32位 ...

  • Linux系统下动态DNS服务的详细配置教程

    Linux系统 是我们不常接触的系统,但他又有很多值得我们利用的功能,今天介绍一个在linux系统下配置动态DNS服务器 在网络管理中,对于DNS服务的管理是一项基础性的工作.随着用户规模的扩大,频繁 ...

  • 飞凌iMX6开发板 安装Android 系统

    飞凌嵌入式iMX6开发板 Freescale i.MX6Q 1GHz处理器,ARM Cortex A9四核,1GB DDR3,8GB EMMC. 操作方法 01 1. 把micro usb 数据线连接 ...

  • 在Linux中打开了太多文件(Too many open files)的三种解决方法

    回答一、 [root@lxadmin nginx]# cat /proc/sys/fs/file-max 8192 文件系统最大可打开文件数 [root@lxadmin nginx]# ulimit ...

  • 在U盘上安装Linux系统解决方案

    在U盘上安装Linux系统解决方案 作为一名IT菜鸟,用PE维护系统已经满足不了我的需求,把windows装进U盘又太俗,只能把目光转向Linux了。 大致从网上搜索了一下教程,尽是些N年前老掉牙的教 ...

  • 不同版Linux隶属同台电脑配置的解决方案

    有时候我们需要同时安装两个版本的系统,这听起来似乎有点难度,其实不然。如果你能正确的掌握系统安装技术,那么这点小问题对你而言根本是手到擒来。那么,不同版Linux隶属同台电脑该怎样配置?请跟随脚本之家 ...

  • Linux 下 Sublime Text 中文输入问题的解决方案

    Linux 下 Sublime Text 中文输入问题的解决方案