showmount -e nfs_server_hostname不显示客户端的所有可用安装,但是为什么?

NFS_Server是一个DataDomain客户端是RHEL 7.3

我运行一个下面的命令来显示从NFS_server为我的客户端系统共享的可用NFS,但是,我没有看到所有可用的共享挂载。

# showmount -e nfs_server_hostname /test myclientsIP # showmount -e nfs_server_IP /test myclientsIP 

就我而言,我想要一个没有显示在上述命令结果中的特定坐标。

仍然作为DataDomain(在我们这里是一个NFS_Server)人告诉我挂载一个特定的共享,即使你没有在上面的showmount命令的输出中看到它。

令我惊讶的是它已经登上了,所以我再次跑到命令的上方,仍然没有显示在列表中。 但是当我检查下面命令的输出时,我感到惊讶。

 # df -h . . . NFS_Server_IP:/test_Rep /mnt 

我想知道它发生的原因,还有没有其他的命令列出隐藏的挂载点?

先谢谢了,并且对差的英语道歉,如果这不是这个问题的正确网站。

showmount命令特定使用NFSv3协议的某些方面来查询服务器并返回可用共享列表。 有两种方法可以运行showmount:

showmount -a – 来自showmount -a的手册页:

-a or --all List both the client hostname or IP address and mounted directory in host:dir format. This info should not be considered reliable. See the notes on rmtab in rpc.mountd(8).

在这种情况下,showmount正在查询服务器上的rpc.mountd,这可能会也可能不会返回可靠的挂载点列表。 rpc.mountd提到的问题是,可能会将旧条目留在rmtab文件中,这意味着它可能不是一个精确的挂载点列表。

showmount -e – 虽然showmount -e的文档表明这是查询服务器的更可靠的方法,但它特别使用了NFSv3协议的这一部分:

https://tools.ietf.org/html/rfc1813#section-5.2.5

这是NFSv3协议的一部分,但不在NFSv4中。 许多服务器将configurationNFS共享通过NFSv3和NFSv4同时可用,因此他们使用showmount设施显示。 但是,如果共享configuration为纯粹的NFSv4,则showmount将无法获取列表,因为协议不提供支持该方法的方法。

即使共享不是纯粹的NFSv4,远程服务器也必须知道以上述两种方式之一(或两者)返回导出,以便showmount返回它。 然而,这并不妨碍它被安装,因为你有经验。

有些存储供应商/产品默认情况下不会响应showmount -e,如果是的话。

NetApp的C模式默认情况下不响应,我会客人DataDomain可能不会。 供应商没有回应的原因通常是安全的。