无法挂载nfs卷 – 超时

我有一个Linux文件服务器,用于安装罚款NFSv3导出。 文件服务器不得不停机进行硬件维护。 将服务器备份后,Linux客户端不能再挂载nfs导出。

服务器或客户端上的configuration没有改变。 我做了一个软件更新,并在第一次安装失败后重新启动客户端,但没有帮助。

[root@client ~]# showmount -e ark Export list for ark: /mnt/bigraid * [root@client ~]# mount -t nfs ark:/mnt/bigraid raid 

这只是挂在这一点上。 在另一个terminal…

 [root@client ~]# dmesg | tail [ 2526.676437] nfs: server ark not responding, timed out [ 2529.183107] nfs: server ark not responding, timed out [ 2531.689778] nfs: server ark not responding, timed out [ 2538.196432] nfs: server ark not responding, timed out [ 2540.703107] nfs: server ark not responding, timed out [ 2543.209767] nfs: server ark not responding, timed out [ 2545.716436] nfs: server ark not responding, timed out [ 2548.223098] nfs: server ark not responding, timed out [ 2550.729775] nfs: server ark not responding, timed out [ 2557.236435] nfs: server ark not responding, timed out 

好的,但是我可以用showmount看到导出…

 [root@client ~]# ping ark PING ark.homebase (10.10.10.2) 56(84) bytes of data. 64 bytes from ark.homebase (10.10.10.2): icmp_seq=1 ttl=64 time=0.067 ms 64 bytes from ark.homebase (10.10.10.2): icmp_seq=2 ttl=64 time=0.043 ms 64 bytes from ark.homebase (10.10.10.2): icmp_seq=3 ttl=64 time=0.048 ms 64 bytes from ark.homebase (10.10.10.2): icmp_seq=4 ttl=64 time=0.042 ms ^C --- ark.homebase ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 2999ms 

所以我不明白

服务器正在运行OpenSUSE。 我确保防火墙closures(不是它曾经),并且networking连接似乎很好。

 ark:/etc # cat exports /mnt/bigraid *(rw,root_squash,insecure,no_subtree_check,sync) 

编辑:这里是使用的RPC端口的列表

 ark:/etc/init.d # rpcinfo -p program vers proto port 100000 2 tcp 111 portmapper 100005 1 udp 37599 mountd 100005 1 tcp 33880 mountd 100005 2 udp 37599 mountd 100005 2 tcp 33880 mountd 100005 3 udp 37599 mountd 100005 3 tcp 33880 mountd 100024 1 udp 49522 status 100024 1 tcp 41314 status 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100021 1 udp 51887 nlockmgr 100021 3 udp 51887 nlockmgr 100021 4 udp 51887 nlockmgr 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100021 1 tcp 49804 nlockmgr 100021 3 tcp 49804 nlockmgr 100021 4 tcp 49804 nlockmgr 100000 2 udp 111 portmapper 

编辑2:有一些tcpdump信息

(编辑3:删除tcpdump输出,因为它可能不相关。)

我根本不了解什么是正确的nfs协商。 如果你想查看数据段,我也倾倒了一个pcap文件。 这是在文件中

编辑3:我可能会遇到这个问题

我在下面@ CIA的build议,做到了这一点:

 ark:/etc/init.d # ./nfsserver stop Shutting down kernel based NFS server: nfsd statd mountd idmapd done ark:/etc/init.d # ./portmap stop Shutting down RPC portmap daemon done ark:/etc/init.d # ./portmap start Starting RPC portmap daemon done ark:/etc/init.d # ./nfsserver start Starting kernel based NFS server: idmapdexportfs: Warning: /mnt/bigraid does not support NFS export. mountd statd nfsd sm-notify done 

尽pipe警告,出口现在似乎mountable。

所以NFS在依赖portmapper运行时很奇怪,所以它可以将特定的端口映射到RPC端口。 (我猜这不是奇怪,它只是它的工作方式)。如果NFS在portmapper之前运行,NFS不知道如何路由请求,因为它在进程开始时检查portmapper。 如果portmapper在NFS之前没有启动,NFS不知道如何将端口映射到rpc。

这里有更多关于这个过程的文档(尽pipe对于CentOS来说,它仍然是相关的): http : //www.centos.org/docs/5/html/Deployment_Guide-en-US/s2-nfs-methodology-portmap.html

至于你的新的错误信息,重新启动你正在登上的盒子,并重新安装,看看错误是否回来。

 tcpdump -i $LAN_IF -n host 10.10.10.2 

应该显示哪些NFS组件失败。

那么我曾经得到相同的错误。 我意识到造成超时的唯一原因是连接没有正确build立。 深入挖掘问题,我检查了我的防火墙,该死的NFS4服务被封锁了!

解决方法: –使用以下命令configuration防火墙设置,并在NFS4服务旁边添加*以启用它。

$ sudo system-config-firewall-tui

为客户端启用以下TCP和UDP端口以访问服务器上的nfs共享。

对于NFS3 tcp:111,662,875,892,2020,2049,32803
udp:111,2049,32769

对于NFS4

tcp:111,2049 udp:111,2049

编辑:尝试从nfs客户端telnet上述端口

如果你有基于主机的防火墙并使用nfs,请检查:

http://wiki.debian.org/SecuringNFS

你可以指定你的守护进程正在使用哪个端口,所以它们不会被随机分配。