Você terá que copiar todos os dados de qualquer maneira. Você definitivamente deveria ter um backup neste momento. A menos que seu dispositivo de backup seja significativamente mais lento que seu disco ativo, a restauração a partir do backup é tão rápida quanto possível.
Um volume LUKS começa com um cabeçalho ( até 2MB ). Se você perder o cabeçalho, os dados no volume serão perdidos. Enquanto o cabeçalho estiver intacto, você pode acessar dados em setores independentes de 512 bytes.
Uma estratégia como cat /dev/mapper/encrypted >/dev/sdz99
funcionará, porque o texto cifrado está localizado em um deslocamento positivo (o tamanho do cabeçalho) em relação ao texto simples. No entanto, isso pode ser mais lento do que restaurar a partir do backup, porque é uma cópia no mesmo disco (com uma cópia de disco para disco, a leitura e a gravação são feitas em paralelo). Para uma cópia do mesmo disco, dd
com um tamanho de bloco grande é apenas um pouco mais rápido que cat
. Há uma grande ressalva com esta estratégia: se houver uma falha de energia ou outro travamento do sistema durante a cópia, toda a sua partição será apagada, porque o cabeçalho foi sobrescrito logo de início.
Você pode salvar os primeiros 2 MB de dados em outro lugar e mover o restante:
dd if=/dev/mapper/encrypted of=/dev/sdz99 bs=2M skip=1 seek=1
Dessa forma, você pode continuar após uma interrupção (não tente montar o volume lógico, e muito menos montar o sistema de arquivos!); no entanto, isso requer saber de onde você parou. Isso é praticamente impossível de determinar (você teria que usar uma ferramenta de cópia que produza um rastro dos blocos que está copiando e os grava no disco, sincronicamente com as cópias de bloco).
Se o seu armazenamento de backup é muito lento, então você pode usar essa estratégia de mudança - o% normal que o cat
irá fazer - e voltar a restaurar a partir do backup se algo de ruim acontecer.
Se o armazenamento de backup for realmente pesado, uma abordagem diferente seria:
- Diminuir o sistema de arquivos (
resize2fs
). - Reduza o volume lógico (
lvreduce
). - Diminuir o volume físico (
pvresize
). - Encolher o volume criptografado .
- Reduza a partição (
fdisk
ougdisk
) e crie uma nova partição no espaço liberado. - Crie um volume físico na nova partição (
pvcreate
) e adicione-o ao grupo de volumes (vgextend
). - Mova o máximo possível de extensões físicas para o volume criptografado (
pvmove
). - Se o volume criptografado não estiver vazio, repita a partir da etapa 1.
- Livre-se do volume físico agora não utilizado (
vgreduce
thenpvremove
).
Longa e tortuosa? Sim. Mais uma vez, minha recomendação é restaurar a partir do backup.