1、file-max 系统所有进程能够打开的文件数
查看当前值
cat /proc/sys/fs/file-max
修改值
file-max的值要大于nr_open,如果不修改nr_open,那么file-max至少要大于1024*1024(nr_open的默认值)
vim /etc/sysctl.conf
fs.file-max = 65535600
2、nr_open 单进程最大能配置的文件数量,不能大于file-max
查看当前值,默认值为1024*0124。
cat /proc/sys/fs/nr_open
修改值
vim /etc/sysctl.conf
fs.nr_open = 1000000
3、通过PAM认证登录的用户资源限制
查看资源限制
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) 3758
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65530
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 10240000
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
设置
#临时
ulimit -n 65535
#永久 修改 /etc/security/limit.conf
#用户 soft/hard nofile 65535
#当前shell该用户能打开的最大文件数
root soft nofile 10240000
root hard nofile 10240000
#当前shell该用户所能创建的最大进程数
root soft nproc 10240000
root hard nproc 10240000
4、systemd的service的资源限制
查看
cat /proc/pid/limit
修改
#全局修改 修改 /etc/systemd/system.conf
DefaultLimitCORE=infinity
#DefaultLimitNOFILE与fs.nr_open取较小值
DefaultLimitNOFILE=100000
DefaultLimitNPROC=100000
#单个服务 修改.service文件
[service]
DefaultLimitCORE=infinity
DefaultLimitNOFILE=100000
DefaultLimitNPROC=100000