我认为 UNIX 命令showmount -a
显示了 nfs 的当前信息:谁正在安装,以及它附加在我的计算机的哪个目录中。但是,当我使用此命令时,它不会回复如下内容:
All mount points on MY-COMPUTER:
当其他主机通过 nfs 从我的 PC 处理一个大文件时,我什至尝试了这个命令。但是,尽管文件处理过程已成功完成,但它什么也没说
我在这里缺少什么?查看当前nfs详细信息的正确命令是什么?
答案1
我不认为你错过了什么。根据您的发行版,showmount -a 有时可能会出现一些问题。我在 CentOS/RHEL 5 和 6 上观察到同样的问题。不用担心,尝试使用此netstat
命令来 grep 查找 NFS 和 NFSD。我家里有一个开发盒,NFS 服务正在运行,但还没有远程挂载。在此示例中,我将检查 RPC,这是一种通常与 NFS 结合运行的服务,较少某些更高版本的 NFS。
watch -n 1 "netstat -antup| grep -i rpc"
Every 1.0s: netstat -antup| grep -i rpc
Sun Mar 31 20:39:20 2019
udp9/rpc.st0td 0.0.0.0:* 26489/rpc.statd
udp0.0.0.0:09365 0.0.0.0:* 26499/rpc.mountd
udp0.0.0.0:00048 0.0.0.0:* 2692/rpcbind
udp0.0.0.0:011 0.0.0.0:* 2692/rpcbind
udp0.0.0.0:040 0.0.0.0:* 26489/rpc.statd
udp627.0.0.1:802 :::* 26499/rpc.mountd
udp6 :::* 2692/rpcbind
udp6::20048 :::* 2692/rpcbind
#### OUTPUT TRUNCATED ####
对于您的情况,请用 NFS 和/或 NFSD 代替我的示例中的 RPC。您将看到所有 NFSD 线程,默认为 8 个线程。您应该可以看到已安装 NFS 的远程主机上的本地端口和远程端口。我习惯watch
了,注意一下。其他可以尝试的事情:有时我showmount -a
通过重新启动 NFS 服务来“修复”该问题。以下命令可能因发行版而异:
CentOS 5: service nfsd restart
CentOS 7: systemctl restart nfs-config.service
然后 systemctl restart nfs-server.service
另一件事:/proc/fs/nfsd
DIR(依赖于发行版)有很多很好的统计数据来监控 NFS 性能。对于 CentOS/RHEL 6/7,pool_threads
显示可以同时处理的 NFS 请求的最大数量。 pool_stats
是好东西所在。