LUKS 是否按顺序映射扇区?

LUKS 是否按顺序映射扇区?

给定一个具有扇区 0、1、2、... 的物理设备,LUKS 将在开头保留一些扇区作为标头。除了这个偏移量之外,我们是否可以假设其余扇区按顺序映射(偏移量+1 => 1,偏移量+2 => 2,等等)?这有记录在任何地方吗?

在调整 LUKS 分区大小时了解这一点至关重要。如果扇区按顺序映射,那么cryptsetup resize --size <sectors>如果我们知道映射设备中实际使用了多少空间,我们就可以简单地进行映射。否则,这样做时我们可能会丢失数据。

答案1

在我的系统上,输出dmsetup table crypto是:

0 209711104 crypt aes-xts-plain64 0000000000000[...]0000000000 0 254:6 4096

这是一个线性映射(与所有设备映射器目标一样),只是加密的。

调整大小

更好的论点可能是加密卷可以调整大小。如果底层设备增加了一个扇区,加解密DM设备也增加了一个扇区,那么很明显,新的上层扇区只能映射到新的下层扇区,否则,下层扇区中的数据将被映射到新的下层扇区。上层会发生变化。

理论上,下层数据可能会被重写,但您可以轻松尝试,情况并非如此:

  1. 调整大小操作立即完成。
  2. 当写入新的上部区域时,下部旧区域中的数据不会改变。

相关内容