O layout do meu único disco é o seguinte:
/dev/sda1 for the plaintext boot partition /dev/sda2 for the encrypted root partition
Meu sistema é ArchLinux e eu seguieste guiapara configurar a criptografia root (sem lvm, sem raid). Aqui está o que eu fiz: executei cryptsetup
e /dev/sda2
mapeei em/dev/mapper/cryptroot
Meu /etc/fstab
fica assim:
UUID=of /dev/mapper/cryptroot / ext4 rw,relatime,data=ordered,discard 0 1 UUID=of /dev/sda1 /boot ext4 rw,relatime,data=ordered,discard 0 2
No meu, /etc/default/grub
alterei uma única linha para ser:
GRUB_CMDLINE_LINUX="cryptdevice=UUID of /dev/sda2:cryptroot:allow-discards"
Nos /etc/mkinitcpio.conf
ganchos ficam assim:
HOOKS="base udev autodetect modconf block encrypt filesystems keyboard fsck"
Por fim, não esqueci de correr mkinitcpio -p linux
e grub-mkconfig -o /boot/grub/grub.cfg
respectivamente.
Enumerei minhas ações de maneira tão rápida porque já tive sucesso na configuração da criptografia para meu root fs. Então, no final, recebo o seguinte erro:
ERROR: device *UUID of /dev/mapper/cryptroot* not found. Skipping fsck. ERROR: unable to find root device *UUID of /dev/mapper/cryptroot* You are being dropped into recovery shell
O estranho é que ele tenta procurar o não criptografado /dev/mapper/cryptroot
e ainda assim não me pede a senha (que eu criei cryptsetup
no /dev/sda2
início). Então, naturalmente, ele não consegue encontrar o dispositivo de bloco não criptografado porque, em primeiro lugar, ele não me pediu sua senha. Você poderia me dizer o que configurei de errado?
Responder1
Tive sucesso com cryptdevice=/dev/disk/by-uuid/<UUID_OF_LOGICAL_DEVICE>:cryptroot root=/dev/mapper/cryptroot
as opções adicionais do kernel no GRUB.
É importante notar que se você estiver fazendo isso sem a precisão de copiar e colar o UUID (como em um console/tty), você pode ter digitado isso. Aqui está uma frase simples, que também é uma droga para digitar no console, mas pode ser mais fácil.
sed "s/\(GRUB_CMDLINE_LINUX=\"\)/\1cryptdevice=\/dev\/disk\/by-uuid\/$(blkid -o value -s UUID /dev/<LOGICAL_DEVICE>):cryptroot root=\/dev\/mapper\/cryptroot/" /etc/default/grub > ~/grub.defaults && mv ~/grub.defaults /etc/default/grub
Responder2
Está faltando /etc/crypttab, os ganchos cpio estão apontando para uma partição da qual o sistema operacional não tem conhecimento
/etc/crypttab
%{UUID de /dev/mapper/cryptroot} / ext4 rw,relatime,data=ordenado,discard,luks - 0 1
então execute novamente a atualização do grub