Como alterar o nome para o qual uma partição de sistema completo criptografada é mapeada

16

Meu sistema está totalmente criptografado com dm-crypte LVM. Recentemente, mudei a partição criptografada de /dev/sda5para /dev/sda2.

A minha pergunta é: como posso mudar o nome da partição criptografada é mapeado para a partir sda5_cryptde sda2_crypt?

Eu posso inicializar o sistema corretamente. Mas o prompt que recebo no momento da inicialização diz (sda5_crypt)que os UUIDmapas são para /dev/sda2:

  Volume group "vg" not found
  Skipping volume group vg
Unlocking the disk /dev/.../UUID  (sda5_crypt)
Enter passphrase:

Tentei live-boot, decrypt sda2, ativar vg, chrootpara /dev/vg/roote correr update-grub2, mas sem sucesso.

Apenas a edição /etc/crypttabtambém não funciona.

nr
fonte
Você recriou o initrd após a edição /etc/crypttab?
Hauke Laging
Acho que sim:update-initramfs -t -u -k all
nr
Saída de grep -r sda5_crypt /etc?
Hauke ​​Laging
Encontrou o problema: preciso montar /dev/sda1como /boot antes da execução update-initramfs.
nr
Faça disso uma resposta em vez de um comentário e aceite-o (se isso for possível com respostas próprias, não tenho certeza) para que esta pergunta seja mostrada como respondida.
Hauke Laging

Respostas:

21

alteração na tabela de criptografia "sda5_crypt" conforme a sugestão abaixo:

Substitua OLD_NAMEpor NEW_NAMEin /etc/crypttabe, em seguida:

# dmsetup rename OLD_NAME NEW_NAME
# update-initramfs -c -t -k all
# update-grub
# reboot
nr
fonte
2
o resgate não deve ser necessário. basta editar o crypttab, update-initramfs, e na próxima inicialização, ele deve ser renomeado. Você também pode renomeá-lo no sistema em execução usando dmsetup rename oldname newname. Observe que isso não libera o nome antigo, pois pode estar em uso.
Frostschutz
@frostschutz Você precisa conseguir acessar esse /etc/crypttabarquivo de alguma forma… A montagem manual a partir do shell initramfs para que você possa inicializar o sistema normal é possível, mas não é fácil. Um sistema de resgate é a opção mais rápida se você não estiver intimamente familiarizado com os cryptsetupcomandos e LVM.
Gilles 'SO- stop be evil'
1
@ Gilles: claro, mas a pergunta dizia: "Posso inicializar o sistema corretamente".
Frostschutz
Você só me salvou uma grande dor de cabeça @nr Obrigado
Deitch
Este é o método certo, mas mais alguns detalhes devem ser destacados: 1) Não se esqueça de atualizar /etc/fstabantes desses comandos também, ou sua partição raiz não será montada. 2) Você pode receber um erro por update-grubnão encontrar o nome anterior. Supondo que você esteja apenas renomeando o nome da cripta, poderá ignorar o erro, reiniciar e executar update-grubapós a inicialização.
Fmstrat 15/03/19
0

Acabei de me deparar com esse problema - com a complicação adicional de que não vi o aviso do último update-initramfs. Então, renomeei o dispositivo crypttab, executei update-initramfs, reiniciei e tive um problema. Resolvi da seguinte forma, basicamente o mesmo nr, mas tive que alterar ligeiramente os comandos:

  1. Inicialize um sistema Ubuntu Live (K) a partir do USB
  2. Abra o dispositivo no Dolphin /? que define toda a configuração necessária e solicita sua senha
  3. Abra o console no diretório raiz do seu sistema quebrado
  4. Execute a seguinte linha por linha
sudo -s
# get the name the partition was mounted with, starts with luks
dmsetup ls
# rename the loop device (check with ls /dev/mapper)
dmsetup rename LUKS_NAME NEW_NAME

# prepare chroot
mount --bind /dev dev/
mount --bind /proc proc/
mount --bind /sys sys/
chroot .

# mount devices (I missed this first, you need both)
mount boot
mount /

# ready to update
update-initramfs -u -k all
y_z
fonte