
Eu tenho uma instalação 'à prova de balas' do Arch Linux estruturada da seguinte forma:
/dev/sda1
: Partição FAT32 EFI: montada como /boot/efi/dev/sda2
: Partição ext4 criptografada LUKS: montada como /boot (senha solicitada)/dev/sda3
: Partição Swap criptografada/dev/sda4
: zpool criptografado contendo sistema de arquivos raiz (senha solicitada)
O sistema inicializa e funciona, mas alguns recursos não funcionam corretamente. Na inicialização o systemd reclama de um erro no ciclo de carregamento, mas o verdadeiro problema é que tenho que inserir a senha /dev/sda2
duas vezes (uma para GRUB e outra para Linux). eu useieste guiapara configurar um arquivo-chave para desbloquear /dev/sda2
, mas sem dados, ele ainda pede uma senha.
Esta é a ordem dos ganchos no meu mkinitcpio.conf
:
base udev autodetect modcont block keyboard zfs encrypt filesystems
Tentei reverter a ordem de zfs
e, encrypt
mas isso criou um problema diferente, onde ele não configurava minha partição swap (também pode ter bagunçado o GRUB [presumo que falhou ao montar /boot?], tive que reiniciar para o archiso para consertar). De qualquer forma, isso não resolveu meu problema, ainda tive que inserir a senha do/dev/sda2 duas vezes.
Meu crypttab
:
cswap /dev/sda3 /dev/urandom swap,cipher=aes-cbc-essiv:sha256,size=256
Meus parâmetros do kernel em /etc/default/grub
:
GRUB_CMDLINE_LINUX="zfs=zroot/ROOT/default rw cryptdevice=/dev/sda2:cboot"
Meu fstab
:
# Static information about the filesystems.
# See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass>
# /dev/mapper/cboot
/dev/mapper/cboot /boot ext4 rw,relatime 0 2
# /dev/sda1
UUID=CE42-9249 /boot/efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=re
mount-ro 0 2
# /dev/mapper/cswap
/dev/mapper/cswap none swap defaults 0 0
Ao inicializar, o sistema me pede a senha /dev/sda2
antes de me pedir /dev/sda4
(mesmo quando eu troquei a ordem do gancho mkinitcpio.conf
).
Depois de fazer algumas pesquisas, parece que o problema é que o destino systemd do ZFS exige que as partições criptografadas sejam desbloqueadas antes de fazer qualquer coisa, mas não sei como consertar isso.