Como faço para que o Grub execute automaticamente o cryptomount para carregar seu arquivo de configuração (inicialização criptografada)?

3

Estou tentando obter uma partição de inicialização totalmente criptografada. Eu estou rodando o Funtoo, mas principalmente usando o wiki do Arch para ajuda.

Então eu decidi fazer algo louco / controverso: não separar as partições boot / root. Minha configuração é assim:

/dev/nvme0n1p1  - EFI parition
/dev/nvme0n1p2  - Swap
/dev/nvme0n1p3  - Encrypted /

No meu /etc/default/grub , tenho o seguinte:

GRUB_ENABLE_CRYPTODISK=y
GRUB_PRELOAD_MODULES="luks cryptodisk"
GRUB_CMDLINE_LINUX="luks enc_root=/dev/nvme0n1p3 root=/dev/mapper/enc_root"

Todos os argumentos do linux são para better-initramfs . Eu incluo uma chave no sistema de arquivos dentro do ramdisk para que ele não solicite minha senha duas vezes.

Eu instalei o Grub usando o seguinte:

grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Funtoo Linux [GRUB]" --recheck --boot-directory=/boot/efi/EFI

Então, no estado atual, recebo um prompt de resgate do Grub. Não é possível encontrar seu arquivo de configuração (ele está no disco de inicialização / raiz criptografado). Então eu corro os seguintes comandos:

insmod luks
cryptomount (hd1,gpt3)
set root=(crypto0)
configfile (crypto)/boot/grub/grub.cfg

.. e eu tenho um sistema de inicialização / trabalho totalmente! :)

Então, minha pergunta é: como configurar o carregador do Grub EFI para tentar carregar automaticamente a partição criptografada em (crypt0) e ler seu arquivo de configuração?

Observação: o Grub identifica o disco como (hd1,gpt3) , provavelmente porque o meu pendrive ainda está conectado. Isso deve mudar para (hd0,gpt3) se eu desconectar e reiniciar.

    
por djsumdog 03.10.2016 / 05:19

1 resposta

0

Acontece no Gentoo / Funtoo, o mapeador de dispositivos para o grub não está habilitado por padrão. Eu adicionei o seguinte a /etc/portage/package.use :

sys-boot/grub device-mapper

Então eu ressurgi o grub, executei o grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Funtoo Linux [GRUB]" --recheck e reiniciei para encontrar uma tela de solicitação de senha do luks. Depois de digitá-lo, tudo começou perfeitamente.

Agradecimentos especiais a Frostschutz, que forneceu a solução neste tópico:

link

    
por 04.10.2016 / 19:51