挂载nfs共享的导出

我有两台机器A和B不在同一个networking上,我想从一台机器上导出一个nfs共享。

在中间,我有一台机器在这两个networking上。

我成功地将我的A的份额挂载到M.现在,我想将此挂载导出到B.

我在M上创build了一个导出,如下所示:

/mnt/path/to/mountpoint/of/A's/nfsshare <B's IP address>(rw,insecure,secure,root_squash,wdelay,sync,no_subtree_check) 

并试图把它安装在B上,就像这样:

 <M's hostname>:/mnt/path/to/mountpoint/of/A's/nfsshare /some/empty/directory nfs auto,rw,rsize=65535 0 0 

当我尝试挂载M的导出时,我在B上得到这个消息:

mount.nfs:vm-dc:/ mnt / dcstore01 / data02 / formats_exploitation失败,服务器给出的原因:权限被拒绝

我在M的系统日志中得到这个消息:

 Dec 6 13:53:05 vm-dc rpc.mountd[27916]: authenticated mount request from 10.0.0.1:773 for /mnt/dcstore01/data02/formats_exploitation (/mnt/dcstore01/data02) Dec 6 13:53:05 vm-dc rpc.mountd[27916]: qword_eol: fflush failed: errno 22 (Invalid argument) Dec 6 13:53:05 vm-dc rpc.mountd[27916]: Cannot export /mnt/dcstore01/data02, possibly unsupported filesystem or fsid= required 

我该怎么办 ?

这被称为nfs重新导出,并被现代Linux内核/发行版所禁止。 作为解决方法,请尝试主机M上的端口转发:

  iptables -t nat -A PREROUTING -p tcp --dport 2049 -j DNAT --to-destination 10.10.10.10:2049 iptables -t nat -A POSTROUTING -p tcp --dport 2049 -j MASQUERADE 

对mountd也是这样,但是最好先在主机A上的/ etc / sysconfig / nfs中修改mountd端口

  RPCMOUNTDOPTS="--port 2052" 

记住,mountd也可以使用udp。