我遇到一个问题,一旦我尝试从 Windows dfs 服务器(Windows server 2012)上的已安装单元复制某些内容,我就会从 Linux 收到“打开文件过多”错误,但仅当我尝试从中复制某些内容时安装单元。
Linux 服务器是 Red Hat Enterprise Linux Server 版本 6.6(圣地亚哥),使用 util-linux-ng 2.17.2 中的挂载(支持 libblkid 和 selinux)完成挂载。
我还将服务器上打开文件和进程的 ulimit 提高到了一个巨大的数量(2000000),当错误发生时,lsof
该/proc/sys/fs/file-nr
文件打开了大约 30000 个文件,但如果我尝试访问该磁盘,我仍然收到该消息。
错误发生得很突然,我无法重现它,但是一旦重现,我可以检查是否能够从 linux 自由复制和移动文件,但无法将某些内容从 dfs 服务器复制到 linux。
我将不胜感激任何形式的帮助,我已经尝试查看所有日志位置,但无法在其中找到对“打开文件过多”的单个引用。
答案1
回答我自己:
原因似乎是启动的进程init
没有继承与用户相同的权限,问题来自 samba 或 nfs 服务(我们使用的是 CIFS,可能相关),我更改了这两个服务的 ulimit从那/etc/sysconfig/nfs/
以后/etc/sysconfig/samba
我们就再也没有遇到过这个问题。