Renumerar partição criptografada - sda3 para sda5

1

Eu tenho uma partição crypt-luks criptografada que atualmente recebe o nome sda3 e é a última partição do disco, ou seja, não há sda4 ou sda5 . A partição criptografada contém três volumes lógicos contendo o sistema de arquivos.

Existe alguma maneira que eu possa renomear a partição de sda3 para sda5 ? Esta é uma nova instalação e não me importo de perder dados. Eu usarei um stick USB de recuperação para renumerar a partição se isso for possível.

Eu tentei usar gdisk com o modo avançado e renomei o disco usando a opção t . Agora, no entanto, não consigo inicializar a partir do disco: ele solicita a senha de criptografia e faz um loop quando é digitado. Qual é a maneira correta de fazer isso?

(Para aqueles curiosos, eu preciso disso é devido a um script automático que espera que minha partição criptografada esteja em sda5 . Infelizmente, o script é executado na inicialização através de uma rede, e eu não tenho controle sobre ele.)

    
por nbubis 06.01.2016 / 14:01

2 respostas

1

A seguinte solução é baseada no fórum postando regra do udev para um symlink

Você tem /dev/sda3 e deseja criar um symlink para sintetizar uma entrada para o dispositivo ausente chamado /dev/sda5 :

cd /dev && ln -s sda3 sda5

Isso pode ser gerenciado no momento da inicialização em udev com uma regra simples que corresponda ao dispositivo de bloco sda3 .

Crie o arquivo /etc/udev/rules.d/80-local ou use um arquivo com nome semelhante e adicione essas linhas a ele:

# symlink existing /dev/sda3 to new sda5
SUBSYSTEM=="block", KERNEL=="sda3" SYMLINK+="sda5"

Caso você esteja curioso, escolhi os valores SUBSYSTEM e KERNEL como correspondências adequadas, analisando a saída de udevadm info -a -n /dev/sda3 . (Eu preferiria combinar em um UUID ou outro identificador exclusivo, mas não consegui encontrar um.)

Agora, diga udev para recarregar suas regras e acionar novas correspondências:

udevadm control --reload-rules
udevadm trigger --attr-match=subsystem=block

e você verá o link simbólico criado automaticamente:

ls -l /dev/sda5
lrwxrwxrwx 1 root root    4 Jan  7 17:18 /dev/sda5 -> sda3

Eu não pude testar este próximo passo, mas dependendo de onde no processo de inicialização você precisa que este link simbólico seja criado, você pode achar necessário atualizar seu initramfs . No meu sistema Debian que é feito assim:

update-initramfs -u
    
por 07.01.2016 / 18:31
2

A maneira mais fácil (mas provavelmente não a melhor) seria apenas criar um link simbólico.

ln -nsf /dev/sda3 /dev/sda5

EDIT: Isso provavelmente será deletado na inicialização, então você precisará fazer um script bem cedo no processo de inicialização

EDIT: Graças ao roaima nos comentários a seguinte regra do udev deve criar o link automagicamente. Crie o arquivo /etc/udev/rules.d/82-cryptsetup.rules com o seguinte conteúdo

SUBSYSTEM=="block", KERNEL=="sda3", SYMLINK+="sda5"
    
por 06.01.2016 / 15:56