linux设置最大打开文件数
一、查看当前用户对进程打开文件最大数的限制
$ ulimit -a | grep open
二、系统对进程打开文件最大数是如何限制的
先来看man的一段解析:
/proc/sys/fs/file-max This file defines a system-wide limit on the number of open files for all processes. (See also setrlimit(2), which can be used by a process to set the per-process limit, RLIMIT_NOFILE, on the number of files it may open.) If you get lots of error messages in the kernel log about running out of file handles (look for "VFS: file-max limit <number> reached"), try increas‐ ing this value: echo 100000 > /proc/sys/fs/file-max The kernel constant NR_OPEN imposes an upper limit on the value that may be placed in file-max. If you increase /proc/sys/fs/file-max, be sure to increase /proc/sys/fs/inode-max to 3-4 times the new value of /proc/sys/fs/file-max, or you will run out of inodes. Privileged processes (CAP_SYS_ADMIN) can override the file-max limit.
(1)修改系统总限制(永久生效)
echo "655350" > /proc/sys/fs/file-max
(2)修改进程的软硬限制(永久生效)
vi /etc/security/limits.conf
添加:
* soft nofile 655350 * hard nofile 655350
注:*表示所有用户都生效
三、重启shell,校验配置是否生效
$ ulimit -a | grep open
原文出自:http://blog.csdn.net/daiyudong2020/article/details/77828959