【转】在Linux中打开了太多文件(Too many open files)的解决方法
回答一 文件系统允许打开的最大文件句柄数 [root@lxadmin nginx]# cat /proc/sys/fs/file-max 8192 每个进程能打开的最大文件句柄数 [root@lxadmin nginx]# ulimit -n 1024 可以在启动某个进程前,使用[root@lxadmin nginx]# ulimit -n 8192调整一下 如果需要永久调整文件系统允许打开的文件句柄数, 在/etc/sysctl.conf末尾添加fs.file-max=xxx 回答二 Linux内核有时会报告“Too many open files”,起因是file-max默认值(如8096)太小。要解决这个问题,可以root身份执行下列命令 # echo "65536" > /proc/sys/fs/file-max # 适用于2.2和2.4版内核 # echo "131072" > /proc/sys/fs/inode-max # 仅适用于2.2版内核d 或将它们加入/etc/rcS.d/*下的init脚本。 回答三 办法是修改操作系统的打开文件数量限制,方法如下: 1. 在/etc/sysctl.conf末尾添加fs.file-max=xxx 2. 在/etc/security/limits.conf文件中设置每个进程能最大打开的文件句柄数 : * - nofile