linux Too many open files解决方法

本文介绍如何使用lsof和awk等工具找出打开过多文件的进程,并提供系统级和用户级的配置方法以优化文件打开数量限制。同时展示了如何检查当前系统支持的最大连接数并列出消耗连接数最多的IP地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1.查看哪些进程打开过多文件(第一列为个数,第二列为进程ID)
lsof -n |awk '{print $2}'|sort|uniq -c |sort -nr|more


2.open files调优(root用户):

a. 按照最大打开文件数量的需求设置系统, 并且通过检查/proc/sys/fs/file-max文件来确认最大打开文件数已经被正确设置。
# cat /proc/sys/fs/file-max
若过小,编辑文件/etc/sysctl.conf增加一行:
fs.file-max = 65536

b.在/etc/security/limits.conf增加一行:

* - nofile 65536


使生效:sysctl -p
查看:ulimit -a

用户下生效: su - xxxx
查看:       ulimit -a

 

cat /proc/sys/net/ipv4/netfilter/ip_conntrack_max

查出目前 ip_conntrack 记录最多的前五名 IP
指令: cat /proc/net/ip_conntrack | cut -d ' ' -f 10 | cut -d '=' -f 2 | sort | uniq -c | sort -nr | head -n 5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值