当前位置: 首页>>技术教程>>正文


如何在Ubuntu 16.04中的另一个ZFS文件系统上挂载ZFS文件系统

,

问题描述

使用ubuntu 14.04时,我将两个zfs挂载点设置为legacy,因此可以通过fstab将一个文件系统挂载在另一个文件系统上。即:

zfs_1/base /home/xyz

zfs_2/photo /home/xyz/stuff/photo

使用ubuntu 16.04之前,在处理fstab之前不会加载zfs,因此我尝试删除了旧的安装点并在文件系统上设置了安装点。

问题是我看不到如何设置安装顺序。如果首先安装了zfs_2/photo,它将挂载auto-create树,然后由于目录不为空,因此zfs_1/base将无法安装。 16.04是否可以解决此问题?

我有一个相关的问题,我会将照片绑定到导出的nfs卷/export/photo;但是我认为我可以通过使用符号链接/export/photo -> /home/xyz/stuff/photo解决此问题,然后仍然通过nfs导出/export/photo(需要对其进行测试)。

最简单的解决方案是还原到旧版本并使用/etc/fstab,但根据我在ubuntu论坛中阅读的内容,这似乎不是一个选择。

最佳答案

您可以通过将ZFS包含在/etc/modules-load.d/*.conf中的文件中来强制ZFS提前加载。假设我们创建的/etc/modules-load.d/zfs.conf具有以下内容:

zfs

该代码本身还带有systemd服务(实际上是couple of them),您可以在最新的安装实现中添加系统依赖性。例如:

/zfs_1/base  /home/xyz               none  defaults,bind,x-systemd.requires=zfs-mount.service  0  0

/zfs_2/photo  /home/xyz/stuff/photo  none  defaults,bind,x-systemd.requires=zfs-mount.service  0  0

(免责声明:我知道x-systemd.requires可以在最新的Arch和Debian Testing上运行,尽管它在mount man page中,但在Ubuntu 16.04中可能尚不存在)

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/11450.html,未经允许,请勿转载。