如何解释NFS crossmnt参数?

raj*_*jee 7 nfs

我的一个客户发现他需要包含'crossmnt'以及他的NFS导出选项.我将把选项写入我们的软件中,这样他就不必进行黑客攻击并且可以使用crossmnt作为一个真正的选项.

这是我可以在我们的文档中使用的crossmnt的正确解释吗?

Crossmnt允许NFS客户端遍历导出根目录下的目录.例如:etc/exports:

/exports      *(fsid=0,ro,root_squash,sync)
/exports/doc  *(ro,root_squash,bind=/usr/share/doc)
Run Code Online (Sandbox Code Playgroud)

使用crossmnt,客户端可以看到/ exports/doc的内容作为/ exports的子文件夹,而没有crossmnt,doc似乎是一个空文件夹.

该视频用于举例:https: //www.youtube.com/watch?v = 9cJciX8dB8

听起来不错吗?谢谢.

小智 13

我相信这个解释中缺少一些东西..我从crossmount知道的是它允许你在导出的目录中看到一个安装点.如果导出的目录没有在其子文​​件夹上安装任何分区,则它们应该在NFS的客户端可见.

例如,如果您的导出目录超过"/ mnt/testing_dir",则包含以下内容:

/mnt/testing_dir/
                 dir1/
                           text1.txt
                           executable.bin
                 dir2/ (mount point for /dev/sda6)
                           doc1
                           doc2
Run Code Online (Sandbox Code Playgroud)

即使没有"crossmnt"选项,"dir1"也会可见.但是,"dir2",因为它是一个安装点,将在"crossmnt"选项中可见,并且在没有它的情况下将为空(除非您使用其他选项,如"nohide").

参考:

crossmnt - 此选项类似于nohide,但它使客户端可以从标记为crossmnt的文件系统移动到安装在其上的导出文件系统.因此,当子文件系统"B"安装在父"A"上时,在"A"上设置crossmnt与在B上设置"nohide"具有相同的效果.