我目前正在尝试将运行 19.04 的数据转储服务器从 LUKS+btrfs 更改为 ZFS。系统驱动器经过 LUKS 加密,可以通过 SSH 解密。它包含一个用于解密 ZFS 文件系统的密钥文件。我已经完成了一半,但自动挂载不起作用。
- 我已经设法编译 ZFS 0.8.1 并按照wiki构建了一个 DKMS 包。通过阅读makefile,我还发现我还需要制作deb-utils来获取zpool等。
我创建了一个支持加密的池
zpool create -o ashift=12 dataint /dev/disk/by-id/mydrive zpool set feature@encryption=enabled dataint
我在其中创建了用密钥文件加密的文件系统
zfs create \ -o encryption=on \ -o keylocation=file:///root/keys/hdd256.key -o keyformat=raw\ dataint/test
我可以安装这个
zfs mount dataint -l
我现在遇到的问题是:
zfs 在启动时未加载。甚至没有内核模块,因此当然也不是池。
仅当导入池或使用该
-l
选项挂载文件系统时才会加载加密卷。我想当 1. 解决时,必须以某种方式解决自动加载问题?
我确实有一些 zfs systemd 服务,但它们被屏蔽了。不确定它们是否是我之前删除的 0.7 包管理器安装的遗留物。
尝试手动启用所有已安装的部件。
要查看您的系统安装了哪些与 zfs 相关的服务:
接下来,启用所有服务。我很啰嗦:
如果您的终端上出现有关被遮盖的投诉,请强制移除所有遮罩:
您可能不需要这个,但为了完整起见,一些旧系统的服务较少,并且更喜欢
update-rc.d
:我现在已经完全解决了这个问题,它基本上有太多部分。
简而言之,DKMS deb 的构建命令应该是
命令:
并且需要启用和启动新服务。
我还在这里描述了如何处理加密数据集。