据我了解,Linux中有两个限制(文件句柄)
/etc/security/limits.conf文件控制的。我把这个调到64k了/proc/sys/fs/file-nr上查看尽管有这种配置,但我的文件句柄已经用完了。除了定期监视文件/proc/sys/fs/file-nr之外,还有其他方法来判断故障的原因是在进程级别还是在系统级别?
发布于 2017-06-29 09:02:21
这是一个程序的大量打开文件。首先,我会检查程序本身是否有故障。打开文件后是否正确关闭文件?
检查运行程序的用户是否对进程没有软限制:
$ ulimit -Sn
1024使用lsof,您可以看到进程的所有打开文件。
lsof -p <PID>也改变了系统的宽限制。它们在/etc/sysctl.conf (fs.file-max )中,它将是永久的。
要查看当前的限制:
cat /proc/sys/fs/file-max
1624748或
# sysctl fs.file-max
fs.file-max = 1624748若要更改系统范围的限制,将在重新启动后消失。
# sysctl -w fs.file-max=2000000
fs.file-max = 2000000
# sysctl fs.file-max
fs.file-max = 2000000#
cat /proc/sys/fs/file-max
2000000https://serverfault.com/questions/858481
复制相似问题