文件句柄数限制怎么改
Linux系统
2026-10-25 05:47
4
报 too many open files,先分清是哪个层面的限制。同一件事有很多种做法,选哪种取决于你的系统版本和线上是否允许中断。
下面按“先判断范围、再处理、最后防复发”的顺序展开,涉及 ulimit、文件句柄 的关键动作都给了具体做法,可以照着走。
查看
ulimit -n 与 cat /proc/pid/limits。
拿不准的时候先做备份再做变更,成本最低。
临时
ulimit -n 65535 只对当前会话有效。
容易踩的坑:只改出问题的那一台、不做同步,后面会反复踩同一个坑。
永久
/etc/security/limits.conf 加 nofile。
拿不准的时候先做备份再做变更,成本最低。
服务层
systemd 单元要单独设 LimitNOFILE。
常见问题
Q:ulimit这类问题,最快的判断办法是什么?
先确认现象的范围:只有单台还是全部、只在某个时段还是持续。范围一缩小,原因基本就浮出来了。
Q:按文中的步骤做完,还需要注意什么?
把处理过程和最终生效的参数记下来。同类问题再出现时直接对照记录,比重查一遍快得多。
小结
回到这篇的四个环节:查看、临时、永久、服务层。以上步骤按顺序做完,同类故障基本能自己处理。留一份操作记录,下次能省一半时间。