O LUKS mapeia setores em ordem?

1

Dado um dispositivo físico com setores 0, 1, 2, ..., o LUKS reservará alguns setores no início para o cabeçalho. Diferente deste deslocamento, podemos assumir que os setores restantes são mapeados em ordem (offset + 1 = > 1, offset + 2 = > 2, etc.)? Isso está documentado em algum lugar?

Saber disso é crucial ao redimensionar uma partição LUKS. Se os setores forem mapeados em ordem, podemos simplesmente cryptsetup resize --size <sectors> se soubermos quanto espaço realmente é usado no dispositivo mapeado. Caso contrário, poderemos perder dados ao fazer isso.

    
por Cyker 11.12.2017 / 23:04

1 resposta

0

No meu sistema, a saída de dmsetup table crypto é:

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

Este é um mapeamento linear (como em todos os destinos do mapeador de dispositivos), apenas criptografado.

redimensionar

Um argumento melhor pode ser que volumes criptografados podem ser redimensionados. Se o dispositivo subjacente é aumentado por um setor e o dispositivo DM criptografado / descriptografado também é aumentado por um setor, então é óbvio que o novo setor de camada superior pode ser mapeado para o novo setor de camada inferior somente porque senão os dados no setor camada superior mudaria.

Em teoria, os dados da camada inferior podem ser reescritos, mas como você pode facilmente tentar, este não é o caso:

  1. A operação de redimensionamento é concluída instantaneamente.
  2. Os dados na área antiga inferior não são alterados quando a nova área superior é gravada.
por 12.12.2017 / 00:53

Tags