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
文章介绍了如何查看和调整Linux系统中关于文件打开数(file-max和nr_open)、进程数以及通过PAM认证的用户资源限制。涉及的命令包括cat/proc/sys/fs/*,ulimit,vim编辑配置文件如sysctl.conf和limits.conf,以及systemd服务的资源限制设置。这些配置对优化系统性能和管理进程资源至关重要。
1638

被折叠的 条评论
为什么被折叠?



