我有一台刚刚安装了 ubuntu 14.04.3 的电脑,我可以使用它的 ip 地址挂载它的 nfs 导出,但不能使用它的名称。具体来说,我在客户端上得到以下结果:
<client>:~# showmount -e dell.local
clnt_create: RPC: Port mapper failure - Unable to receive: errno 111 (Connection refused)
<client>:~# showmount -e 10.0.2.4
Export list for 10.0.2.4:
/ 10.0.0.0/8
我有另一个系统,我设置了完全相同的系统(我的意思是,我使用同一套脚本来设置它,它实际上应该完全相同,当然除了名称之外)。 一切都在同一个客户端上在该系统上运行。
即使使用其 IP 地址,问题服务器最初也会响应相同的错误。重新启动 nfs-kernel-server 使 IP 地址方法有效。
我希望可以提供更多信息,但我已经花了几个小时,老实说,我甚至不知道什么是相关的。我尝试多次重新启动 nfs-kernel-server。我尝试使用多个客户端。我甚至重新安装了操作系统。任何帮助都将不胜感激,谢谢!
编辑:
一位评论者建议我尝试从服务器本身 ping 一下。我照做了,输出结果与我从客户端 ping 时得到的结果类似(我可以复制确切的输出,但我必须手动执行,而且我看不出这有什么用,这是从客户端 ping 的确切输出):
<client>:~# ping dell.local
PING dell.local (10.0.2.6) 56(84) bytes of data.
64 bytes from 10.0.2.6: icmp_seq=1 ttl=64 time=0.184 ms
64 bytes from 10.0.2.6: icmp_seq=2 ttl=64 time=0.243 ms
64 bytes from 10.0.2.6: icmp_seq=3 ttl=64 time=0.207 ms
64 bytes from 10.0.2.6: icmp_seq=4 ttl=64 time=0.193 ms
64 bytes from 10.0.2.6: icmp_seq=5 ttl=64 time=0.290 ms
64 bytes from 10.0.2.6: icmp_seq=6 ttl=64 time=0.233 ms
64 bytes from 10.0.2.6: icmp_seq=7 ttl=64 time=0.255 ms
64 bytes from 10.0.2.6: icmp_seq=8 ttl=64 time=0.227 ms
^C
编辑2:
<user>@dell:/data# rpcinfo -p
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 58196 status
100024 1 tcp 57892 status
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 2 tcp 2049
100227 3 tcp 2049
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 2 udp 2049
100227 3 udp 2049
100021 1 udp 47379 nlockmgr
100021 3 udp 47379 nlockmgr
100021 4 udp 47379 nlockmgr
100021 1 tcp 41662 nlockmgr
100021 3 tcp 41662 nlockmgr
100021 4 tcp 41662 nlockmgr
100005 1 udp 41182 mountd
100005 1 tcp 43363 mountd
100005 2 udp 59166 mountd
100005 2 tcp 59611 mountd
100005 3 udp 42491 mountd
100005 3 tcp 54650 mountd
编辑3:
以下是客户端上 /etc/hosts 的内容(将客户端主机名替换为“client”):
127.0.0.1 localhost
127.0.1.1 client
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
在服务器上:
127.0.0.1 localhost
127.0.1.1 dell
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
这是服务器上的 /etc/exports:
/ 10.0.0.0/8(rw,fsid=0,no_root_squash,no_subtree_check,sync,insecure)
请注意,关于上述明显的安全问题,这是一个特殊用途的网络,只有我有物理访问权限,并且只有我知道无线密码。
答案1
您可以编辑 /etc/hosts 文件并添加如下例所示的行:
192.168.1.2 server.servername.com 服务器
这使得“server.servername.com”和“server”解析为 IP 192.168.1.2
或者,您可以安装 DHCP 服务器,如果这也是您的目标,我可以向您发送一个很好的操作方法。
另外:确保您的端口已打开,并且所有 RPC 服务都在运行(portmapper 等)尝试:rpcinfo -p