我管理着两台由前任管理员设置的服务器,其中一台用作 NFS 服务器,另一台用作客户端,它们具有专用的 10GBase-T 连接。根据管理层的要求,这两台服务器最近都从 Debian 8 升级到了 11。升级后未显示与 TCP/IP 或 NFS 相关的错误,升级前 NFS 连接似乎很稳定。升级后,它不再那么稳定,文件访问也不稳定。检查服务器上的日志会显示两条错误消息。
rpc-srv/tcp: nfsd: got error -104 when sending 24 bytes - shutting down socket
rpc-srv/tcp: nfsd: got error -32 when sending 24 bytes - shutting down socket
-32 错误出现的频率远高于 -104 错误。升级前检查历史记录也显示存在同样的错误,但出现频率略低。
希望得到任何帮助。在各个论坛中搜索发现 -32 错误很少,没有解决,有些解决了 -104 错误,但大部分都是通过升级到从那时起就被取代的 nfs-server 版本来解决的。
编辑如下
对 NFS 问题进行一些常规搜索后,我检查了 nfsstat 和 netstat 输出。以下是两者。
root@nfsserver:~# nfsstat -r
Server rpc stats:
calls badcalls badfmt badauth badclnt
2570111375 63390961 0 63390961 0
root@nfsserver:~# netstat -i
Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 13992642607 0 6728159 0 2417486300 0 0 0 BMRU
eth1 9000 12890945209 0 0 0 12332795301 0 0 0 BMRU
lo 65536 212459 0 0 0 212459 0 0 0 LRU
请注意,NFS 使用的接口是 eth1。虽然 rpc 统计信息看起来像是网络连接不良,但接口本身没有出现任何错误。不过,在客户端和服务器上检查 netstat -s 会显示一些错误。
安装并配置了已知良好的 NIC,并使用了 STP CAT6A 电缆,结果相同。两端的接口均设置为相同的 MTU,即 9000。
NFS 导出具有以下选项:rw、async、no_root_squash、no_subtree_check
NFS 挂载在 fstab 中具有以下选项:nfsvers=3、rw、async、hard、intr、_netdev
NFS 挂载在 mount 中显示以下选项:rw、relatime、vers=3、rsize=1048576、wsize=1048576、namlen=255、hard、proto=tcp、timeo=600、retrans=2、sec=sys、mountaddr=192.168.0.1、mountvers=3、mountport=55838、mountproto=udp、local_lock=none、addr=192.168.0.1、_netdev
这些选项已在具有相同操作系统的其他 NFS 服务器和客户端上成功使用。我已经尝试定义 rsize 和 wsize,没有任何变化。
我对此束手无策,希望有一位 NFS 天才可以帮我解决。