linux設定最大開啟檔案數
阿新 • • 發佈:2019-02-14
一、檢視當前使用者對程序開啟檔案最大數的限制
$ 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
End;