
Problema interessante que me ocorreu nesse fim de semana.
Eu estava preparando um sistema de backup para as minhas máquinas, e errei no script o nome de uma variável!
Aí meu rsync começou a apagar arquivos da raíz e perdi minha estação de trabalho.
Por sorte, o que me interessa está em outro disco, e a solução foi fazer uma instalação nova (e aproveitei para instalar o spin do Fedora Cosmic.
Aqui está um passo a passo adaptado do que peguei no DeepSeek, específico para o Fedora (a partir do uso do dracut):
1. Criar um arquivo de chave
sudo dd if=/dev/urandom of=/root/luks-keyfile bs=4096 count=1
sudo chmod 0400 /root/luks-keyfile
2. Adicionar a chave ao LUKS
sudo cryptsetup luksAddKey /dev/sda3 /root/luks-keyfile
3. Configurar o crypttab
Editar o arquivo /etc/crypttab
e adicionar:
olddisc /dev/sda3 /root/luks-keyfile luks
4. Configurar o fstab
Primeiro, descubra o ponto de montagem e o filesystem:
# Abrir a partição temporariamente
sudo cryptsetup luksOpen /dev/sda3 olddisc --key-file /root/luks-keyfile
# Verificar o filesystem e UUID
lsblk -f /dev/mapper/olddisc
# Fechar após verificar
sudo cryptsetup luksClose olddisc
Edite /etc/fstab
e adicione (ajuste o filesystem conforme mostrado no lsblk):
/dev/mapper/olddisc /mnt/sda3 ext4 defaults 0 2
5. preparar o Dracut (específico ao Fedora)
# Copiar a chave para o diretório correto
sudo mkdir -p /etc/cryptsetup-keys.d
sudo cp /root/luks-keyfile /etc/cryptsetup-keys.d/olddisc.key
sudo chmod 0400 /etc/cryptsetup-keys.d/olddisc.key
6. Atualizar o initramfs no Fedora
# Atualizar o initramfs
sudo dracut -f
# Ou alternativamente
sudo mkinitrd -f
7. Habilitar o serviço (se necessário)
# Recarregar serviços
sudo systemctl daemon-reload
8. Testar
# Testar a abertura automática
sudo cryptsetup luksClose olddisc 2>/dev/null || true
sudo systemctl restart [email protected]
# Verificar se abriu
lsblk | grep olddisc
# Testar montagem
sudo mount /dev/mapper/olddisc /mnt/sda3
9. Reiniciar para testar completamente
sudo reboot
Verificação pós-reboot
Após reiniciar, verifique se tudo está funcionando:
# Verificar se o dispositivo criptografado está aberto
lsblk | grep olddisc
# Verificar se está montado
df -h | grep olddisc
# Verificar status do serviço
systemctl status [email protected]
Isso configura a montagem automática do LUKS sem solicitar senha no boot, o que seria terrível, pois eu teria que digitar a senha do disco do sistema, além da senha desse outro disco (olddisc).
Mas péra aê! Criptografar um disco e simplesmente montar automaticamente? Que porcaria é essa? Minha instalação é completamente criptografada, então o disco está protegido.