ulimit:
1,查看进程允许打开的最大文件句柄数
ulimit -n
2,设置进程能打开的最大文件句柄数
ulimit -n xxx
-H 指定资源的硬限制
-S 指定资源的软限制
hard 代表当前硬限制
soft 代表当前软件限制
unlimited 代表不限制.
3, 文件限制配置文件
/etc/security/limits.conf
cat /etc/security/limits.conf apps soft nofile 65535 apps hard nofile 65535 apps soft nproc 10240 apps hard nproc 10240
4,文件句柄最大数据配置
配置文件:/proc/sys/fs/file-max
这个参数的默认值和内存大小有关系,可以使用公式:file-max ≈ 内存大小/ 10k.
4.1 建议将整个系统的文件句柄值至少设置为 65536
4.2 echo "65536" > /proc/sys/fs/file-max
4.3 sysctl -w fs.file-max=65536
4.4 echo "fs.file-max=65536" >> /etc/sysctl.conf
[root@zhuzhonghua2-fqawb ~]# cat /proc/sys/fs/file-max 798282[root@zhuzhonghua2-fqawb fd]# sysctl -a
grep fs.file-max fs.file-max = 798282
5,文件句柄使用情况配置文件:/proc/sys/fs/file-nr
[root@zhuzhonghua2-fqawb ~]# cat /proc/sys/fs/file-nr1440 0 798282
这三个值分别指:系统已经分配出去的句柄数、已经分配但是还没有使用的句柄数以及系统最大的句柄数(和file-max一样)。
6,查看进程打开的文件句柄数
lsof:列出当前系统打开文件的工具。
[root@zhuzhonghua2-fqawb linuxC]# lsof -p 14895 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME