目前我们正在考虑一个解决scheme,为每个用户的主目录创build一个单独的挂载点。 而我们以前在客户端上每个文件服务器上最多只有一对挂载,现在我们可能有数百个挂载,许多来自同一个文件服务器。 这显然影响客户端,因为有更多的坐骑,它也影响文件服务器,因为有更多的出口要跟踪吨。 在我们的环境中,我们正在讨论每个文件服务器数百个客户端和每个客户端数百个用户(即,在文件服务器上可能不超过10000个输出)。
我的问题是具体关于这个解决scheme的功效。 如果这个问题不好,还有其他的解决办法,但是由于种种原因,有些政治问题,这个问题已经上升到了顶峰。 客户端都是linux,文件服务器是linux和solaris系统的混合体。 我所关心的是内核跟踪坐骑和共享的资源是有限的,但是我并不确定它的function是什么。
一般来说,我认为我们遇到了30-40次坐骑的问题,我们不得不改变我们的地图,所以我们没有坐骑。
只需从http://nfs.sourceforge.net/下载并粘贴即可
为什么我无法在客户端上挂载超过255个NFS文件系统? 为什么有时甚至小于255?
答:在Linux上,每个安装的文件系统都被分配一个主号码,它指出了它是什么文件系统types(例如,ext3,nfs,isofs); 和一个小号码,这使得它在同types的文件系统中是唯一的。 在2.6之前的内核中,Linux主要和次要编号只有8位,所以它们的数值范围可以从0到255。由于次要编号只有8位,系统只能挂载255个相同types的文件系统。 所以一个系统最多可以安装255个NFS文件系统,另外还有255个ext3文件系统,255个以上的iosfs文件系统等等。 2.6之后的内核有20位宽的次要号码,这就减轻了这个限制。
但是,对于Linux NFS客户端来说,问题会更糟,因为它是一个匿名文件系统。 本地基于磁盘的文件系统具有与其关联的块设备,但是匿名文件系统不包含。 例如,/ proc是一个匿名文件系统,其他networking文件系统(如AFS)也是如此。 所有匿名文件系统共享相同的主号码,因此单个主机上最多只能安装255个匿名文件系统。
通常,在任何给定的客户端上,不需要超过10到20次的NFS挂载。 但是,在一些大型企业中,您的工作和用户可能分布在数百个NFS文件服务器上。 要解决可以在单个主机上安装的NFS文件系统数量的限制,build议您为Linux设置并运行其中一个automounter守护程序。 自动加载程序会根据需要查找并装载文件系统,并卸载它发现的任何非活动文件系统。 你可以在这里find关于Linux自动加载器的更多信息。
您也可能会遇到系统上特权networking端口数量的限制。 NFS客户端为每个NFS安装点使用一个具有自己端口号的唯一套接字。 使用自动安装程序可通过自动卸载未使用的文件系统来解决有限的可用端口数量,从而释放其networking端口。 Linux NFS客户端中的NFS版本4支持使用每个客户端 – 服务器对的一个套接字,这也有助于增加客户端上允许的NFS挂载点数量。
减轻客户端的负载。 如果使用NFS路由,请考虑使用automount(autofs)。
这将挂载从服务器请求的NFS导出。 这里是一个简短的自动安装教程 , 这里是为什么 。
如果发出了非常多的nfs挂载请求,则服务器可能会遇到问题,挂载请求可能会从非特权端口(即大于1024)开始。
这是我对NetApp文件pipe理器的一个说明:
如果您收到如下错误:
mount:RPC:authentication错误; 为什么=客户端证书太弱
您必须将选项nfs.mount_rootonly设置为closures。 问题是,挂载请求来自高于1024的端口,并被作为客户端(即非根级别)请求丢弃。 这可能是因为客户端程序正在发出请求,或者您正在发出如此多的同时挂载请求,以致1024以下的端口饱和,从而导致来自“高”端口的请求。