我想为我的笔记本电脑及其(加密)备份(带有 SATA 外壳和 SSD 驱动器)设置具有单个 NVMe 驱动器的弹性加密存储。
这是我目前所拥有的:
- SSD -> GPT 分区(未加密的 /boot、EFI 和 LUKS)-> LVM -> BTRFS。
我开始检查 LUKS 是否有 CRC,这样它就不会增加数据损坏,结果似乎它没有。它将为单个坏位创建 16 个错误字节。我想知道是否有办法为 LUKS 或 LUKS 下面的层设置完整性检查,以便在数据损坏、内存损坏、可能的不安全关机的情况下不会传播错误。如果发生无法恢复的数据损坏,我会从备份中恢复它,我认为两者同时损坏的可能性很小。任何想法都非常受欢迎 :)
答案1
我检查了相当多的选项(用于加密驱动器)。请注意,我对 ZFS 不太熟悉。此外,SSD 上的 btrfs DUP 可能不是 100%“复制”,因为磨损均衡可能会将副本放在同一区域,因此两个副本都可能受损。
单驱动
LUKS + btrfs 带元数据(和数据)DUP
- 将可用磁盘大小减少一半
带有 dm-integrity 的 LUKS + 带有元数据(和数据)DUP 的 btrfs
- 写入性能降低一半(启用日志功能时),但 btrfs 收到的损坏数据较少
具有本机加密的 ZFS(或在 LUKS 之上)
两个驱动器
2x LUKS + btrfs 和 raid1
2x dm-integrity + mdadm (raid1) + LUKS + btrfs 带元数据(和数据)DUP
ZFS 相当于 raid1 和本机加密(或在 LUKS 之上)