这是 12.04 LTS,带有来自 ppa 的 Linux 上最新的 ZFS。
我有两个名为数据的存储池和一个具有不同设置(例如压缩)的数据集数据/其他。
我将数据设置为 sharenfs,并将数据/其他设置为从数据继承 sharenfs。
从机器上,我希望能够挂载数据并查看数据/其他,但我没有权限。我该如何设置它以继承 nfs 权限?
脚步:
- 创建zpool数据
- 创建数据集数据/其他
- 已安装 nfs 服务器
- 设置 sharenfs
- 设置 sharesmb 为开启。
- 使用我的 uid/gid 在其他计算机上挂载 nfs
澄清一下,我可以安装数据并查看数据中的所有内容。我无法读取数据/其他。我可以直接安装数据/其他并读取其中的所有内容。我想要的是能够通过仅安装数据来读取/写入数据/其他。
如果我在 Linux 客户端强制使用 nfs 版本 4,我确实可以获得访问权限,但在 Windows 上我只能使用版本 3。
答案1
拒绝从父挂载访问子挂载
听起来很像https://blog.programster.org/sharing-zfs-datasets-via-nfs(原文重点):
可以很容易地将您的“池”分成任意多个数据集。每个数据集都被视为自己的文件系统,有自己的规则和设置,这意味着就通过 NFS 共享而言,您可以更安全地共享,因为客户端将无法超出您决定共享的数据集/文件系统的范围。
要记住的一件重要的事情是您需要在每个要共享的池/数据集上运行以下步骤,无论其层次结构如何。例如,如果您有一个数据集是另一个数据集的父数据集,那么如果您想共享它,您仍然必须在该子数据集上设置共享,即使您已经在父数据集上设置了共享。
对于通过搜索引擎来到这里的其他人来说这可能也很有趣。