我正在将 Windows/NTFS 备份迁移到 Ubuntu 和本机加密的 ZFS。作为一名没有 Linux 经验的 Windows 老手,大多数指南对我来说都像是天书。目前进展顺利:
- 通过安装 OpenZFS
sudo apt-get install zfsutils-linux
- 创建了一个 raidz 池:
sudo zpool create -f Backup raidz3 /dev/sda /dev/sdb
等等…… - 安装海豚定位泳池
/Backup
- 在池内创建了一个数据集:
sudo zfs create -o encryption=on -o keyformat=passphrase Backup/Backup
我在这里有点卡住了:
- 操作系统从不要求输入池/数据集密码。挂载所需的只是
sudo zfs mount Backup
+ root 密码,或者登录。 - 池和数据集有什么区别?池为我创建了一个 ZFS 文件系统。
- 是否可以使用文件夹
/Backup
而不是/Backup/Backup
?推荐这样做吗? - 什么样的(适合初学者的)维护程序可以运行而不会冒弄乱的风险?此 ZFS 设置完全是关于冗余和位腐烂保护的。
我查看了几个关于此问题的帖子,但我完全搞不懂命令和变量。非常感谢大家的帮助。:)
答案1
您所做的一切看起来都是正确的。如果我理解正确的话,您唯一的问题是您不必输入密码即可挂载加密数据集。
您已啟動了嗎?
ZFS 会无限期地将数据集键保留在内存中,直到您卸载它们或导出池。您可以使用以下zfs unload-key
命令显式卸载数据集的键:
zfs unload-key tank/my/dataset
此命令仅适用于未安装的数据集。然后您会发现它zfs mount
不再起作用。您需要zfs load-key
先发出命令。
如果您想要一个具有加密根数据集的池,您可以像这样创建它:
zpool create -O encryption=on -O keyformat=passphrase mypool /dev/disk/by-id/…
当您导入此池时,根数据集将被卸载,直到您执行此操作zfs load-key
。zfs mount
创建后加密数据集涉及zfs send
和zfs receive
。如果可以,请创建一个新的加密数据集。麻烦少得多。