我试图在NFS4服务器上设置2个不同的挂载点,但不能按需要运行。
/etc/exports (on server) /mnt/raid/nas 10.1.0.0/18(rw,fsid=0,sync) /mnt/raid/nas/file/perm 10.1.0.0/18(rw,sync,all_squash,no_subtree_check,anonuid=501,anongid=503) /mnt/raid/nas/mail 10.1.0.0/18(rw,sync,all_squash,no_subtree_check,anonuid=5555,anongid=5555)
有了上述的挂载点,理论上我应该可以像下面那样分别挂载这些subdirs:
$ -> mount -v -t nfs4 nas.vpc1.j1n.us:/mnt/raid/nas/file/perm /mnt/nas/store/file/perm/
但我不断收到这些错误: ... failed, reason given by server: No such file or directory ,但如果我像这样挂载:
$ -> mount -v -t nfs4 nas.vpc1.j1n.us:/ /mnt/nas/
有用。 但是NFS服务器上的/ mnt / raid / nas文件夹中还有其他的dir,我不想公开给NFS客户端,所以这个选项确实没有帮助。
我能做些什么来使用NFS4,但指定挂载点,所以我最终没有共享/ mnt / raid / nas中的所有内容?
找出问题所在。 因为我将/mnt/nas设置为fsid = 0,这意味着挂载子目录的客户端不再需要引用整个path,而仅需要子子目录(相对path)。
改变这个:
$ -> mount -v -t nfs4 nas.vpc1.j1n.us:/mnt/raid/nas/file/perm /mnt/nas/store/file/perm/ $ -> mount -v -t nfs4 nas.vpc1.j1n.us:/mnt/raid/nas/mail /mnt/nas/mail/
对此
$ -> mount -v -t nfs4 nas.vpc1.j1n.us:/file/perm /mnt/nas/store/file/perm/ $ -> mount -v -t nfs4 nas.vpc1.j1n.us:/mail /mnt/nas/mail/
请注意,在第二组命令中,每个命令的server:/path部分都缺less父path/mnt/raid/nas 。