Linux / Unix 命令查找连接到我的 NFS 服务器的 NFS 客户端
如何查明有多少个 nfs 客户端连接到在 Red Hat Enterprise Linux 上运行的 NFS 服务器?
您可以使用以下命令。SSH 或登录到您的nfs 服务器并输入以下命令:
netstat -an | grep nfs.server.ip:port
如果你的 nfs 服务器 IP 地址为 192.168.1.12,端口为 2049,请输入:
netstat -an | grep 192.168.1.12:2049
示例输出:
tcp 0 0 192.168.1.12:2049 192.168.1.5:757 ESTABLISHED tcp 0 0 192.168.1.12:2049 192.168.1.6:892 ESTABLISHED
在哪里,
- 192.168.1.12 – NFS 服务器 IP 地址
- 2049 – NFS 服务器端口
- 192.168.1.5 和 192.168.1.6 – NFS 客户端 IP 地址
showmount 命令
您可以使用showmount 命令查看 NFS 服务器的挂载信息。不应使用以下命令,因为它可能会产生不可靠的结果(您可以在任何一个 nfs 客户端上键入此命令):
示例输出:
showmount -a nfs03
All mount points on nas03: 192.168.1.101:/volume1/data 192.168.1.102:/volume1/data 192.168.1.103:/volume1/data 192.168.1.5:/volume1/data 192.168.1.6:/volume1/data
在哪里,
- -a :以 host:dir 格式列出客户端主机名或 IP 地址以及挂载目录。此信息不可靠。
有关 /var/lib/nfs/rmtab 文件的更多信息
rmtab 文件位于 nfs 服务器上的 /var/lib/nfs/rmtab,可以使用 cat 命令查看:
cat /var/lib/nfs/rmtab
来自 rpc.mountd(8) 手册页:
rpc.mountd 守护进程通过在
/var/lib/nfs/rmtab 文件中添加条目来注册每个成功的 MNT 请求。当从 NFS 客户端收到 UMNT 请求时,
只要
该导出的访问控制列表允许该发送者访问该导出, rpc.mountd 就会从 /var/lib/nfs/rmtab 中删除匹配的条目。客户端可以使用 show-mount(8) 命令发现 NFS 服务器当前正在导出的文件系统列表,
或者已挂载其导出的其他客户端的列表
。showmount(8) 使用 NFS MOUNT 协议中的其他过程来
报告有关服务器导出的文件系统的信息。但请注意,几乎没有什么可以保证
/var/lib/nfs/rmtab 的内容准确无误。客户端
在调用 UMNT 后仍可继续访问导出。如果客户端重新启动时未发送 UMNT 请求,则
/var/lib/nfs/rmtab 中仍会保留该客户端的过时条目。