![公开作为 NFS 共享卷的一部分挂载在 ZFS 卷下的未导出文件系统](https://linux22.com/image/700671/%E5%85%AC%E5%BC%80%E4%BD%9C%E4%B8%BA%20NFS%20%E5%85%B1%E4%BA%AB%E5%8D%B7%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86%E6%8C%82%E8%BD%BD%E5%9C%A8%20ZFS%20%E5%8D%B7%E4%B8%8B%E7%9A%84%E6%9C%AA%E5%AF%BC%E5%87%BA%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F.png)
我的服务器上有一个 ZFS 卷,我将其用作网络 NAS(称为 data/nas 和“数据”raidz zpool 的一部分),我使用 ZFS 属性设置 sharenfs 通过 NFS 将此卷公开到我的 LAN。这很有效,而且管理起来非常简单。
我最近买了一个 8TB 的 Seagate Archival SMR HDD,里面存着一些我想通过 NAS 的 NFS 共享公开的数据。
由于这是一个存档 SMR 驱动器,我只想以只读模式安装和公开此驱动器(因为这些驱动器上的重写性能预计会很糟糕),并且它可能不适合添加到 ZFS(因为它已经存在并且 SMR 驱动器在 ZFS 下不是最佳性能)。它当前的格式是 UFS。
我想要做的是将驱动器安装在某个地方(比如说 /mnt/foo),然后将该位置绑定到我的 data/nas ZFS 共享下的目录,从而通过我现有的 NFS 共享公开数据。
我读到过,在 sharenfs 选项中设置 crossmnt 和 nohide 的组合可能会允许两个 NFS 导出之间存在这种关系。但是,由于我的存档驱动器不是 ZFS,因此将其设置为 NFS 导出并不像使用 ZFS 卷那样简单;即使这种策略有效。
是否有人知道这种跨文件系统 NFS 策略是否可行,特别是当挂载的子文件系统不是 ZFS NFS 导出(或任何 NFS 导出)时?如果是这样,那么必须配置哪种选项才能确保跨 NAS 连接可靠地访问此子文件系统?
仅供参考:该服务器正在运行 SmartOS(Illumos),因此具有原生 ZFS 和 UFS 文件系统支持。