Guia de instalação do Arch Linux com criptografia de disco

Faz um ano que eu uso o Arch Linux, comecei a usar com o excelente tutorial do Diolinux, só que o tutorial ensina a instalar sem nenhum tipo de criptografia para seus dados, algo que pode ser feito com facilidade em vários outros instaladores, como o do Ubuntu, Fedora e Pop OS. Então, segue o guia para instalação de um sistema criptografado no Arch linux.

Pré instalação

Antes de começarmos, verifique se seu computador possui suporte para UEFI, o arch pode ser instalado tanto em BIOS-Legacy ou UEFI, utilize BIOS-Legacy apenas se seu computador não tem suporte.

Baixe a ISO no Arch Linux - Downloads (recomendo utilizar o BitTorrent ou o mirror mais próximo de você). Após o download terminar verifique o hash da ISO.

Grave a iso em um pendrive, recomendo o Etcher (multiplataforma), Rufus (apenas para Windows), ou o Gnome Discos (apenas para linux, vem pré instalado em distros que utilizam o Gnome como Desktop Enviroment).

Plugue o pendrive, reinicie o computador e selecione o pendrive para dar boot.

Instalação

  1. Utilize loadkeys br-abnt2 para configurar seu teclado para o layout ABNT, se seu teclado não é padrão ABNT substitua br-abnt2 pelo layout de seu teclado (ls /usr/share/kbd/keymaps/**/*.map.gz para listar todos os layouts disponíveis). Se seu teclado tem o layout US, não é necessário.
  2. É necessário conexão com a internet, se o seu computador for conectado via cabo normalmente já estará funcionando.
    Se utiliza wireless verifique se sua placa não está bloqueada com o rfkill, se estiver, desbloqueie com rfkill unblock wifi ou rfkill unblock all, depois disso conecte com o wifi com o wifi-menu.
    Teste a conexão com um ping.
  3. Agora vamos particionar o disco. Verifique o dispositivo de bloco do local com fdisk -l ou lsblk. No caso da imagem, o dispositivo de disco é /dev/vda.
    Se seu disco pode ser totalmente formatado, recomendo criar uma nova tabela de partições gpt, fdisk /dev/vda, depois g e w. Só faça isso se seu disco pode ser totalmente limpo.
    Vamos formatar o disco com cfdisk /dev/vda, são necessárias três partições, /boot, /boot/efi e a partição que será criptografada.
    Será necessário mudar o tipo de duas partições, /boot/efi tem o tipo EFI System e a partição criptografada Linux LVM.
    Se você quer fazer dual boot com outro sistema, deixe um espaço livre para a instalação do outro sistema.
    Escreva e saia do cfdisk.
  4. Crie o sistema de arquivos das partições que foram criadas. mkfs.fat -F32 /dev/vda1, mkfs.ext4 /dev/vda2. A partição de tipo EFI System precisa ser FAT32, a partição /boot é ext4.
    Vamos criptografar o disco, use o comando cryptsetup luksFormat /dev/vda3, depois abra o disco usando cryptsetup open /dev/vda3 lvm.
    image
    Crie o volume físico pvcreate /dev/mapper/lvm, depois crie o grupo de volumes vgcreate archLinux /dev/mapper/lvm (O nome do grupo, no exemplo archLinux, pode ser alterado). E crie os volumes lógicos dentro do seu grupo, lvcreate -L 15G archLinux -n root e lvcreate -l 100%FREE -n home.
    image
    Crie o sistema de arquivos para os volumes criados, mkfs.ext4 /dev/archLinux/root e mkfs.ext4 /dev/archLinux/home.
    Por final, monte o sistema. mount /dev/archLinux /mnt, mkdir /mnt/home, mount /dev/archLinux/home /mnt/home, mkdir /mnt/boot, mount /dev/vda2 /mnt/boot. mkdir /mnt/boot/efi e mount /dev/vda1 /mnt/boot/efi. Rode o comando lsblk para visualizar se está montado corretamente.
    image
  5. Agora será instalado a base do sistema, antes disso vou alterar o /etc/pacman.d/mirrorlist para puxar os arquivos de um mirror próximo, infelizmente nenhum mirror brasileiro está no arquivo da ISO deste mês (07/2020).
    Rode o comando pacstrap /mnt base, com isso será instalado a base do sistema. Depois de terminal a instalação, gere o arquivo /etc/fstab, com o comando genfstab -U -p /mnt >> /mnt/etc/fstab, agora vamos entrar no sistema que está sendo instalado arch-chroot /mnt.
  6. Agora vamos instalar alguns pacotes essenciais, pacman -S base-devel linux linux-headers linux-firmware efibootmgr grub lvm2 networkmanager (Você pode substituir o pacote linux por outro kernel, linux-lts) e instale o seu editor de texto preferido pacman -S nano neovim vim.
    Instale o os-prober se você for fazer dual boot, para reconhecer outros sistemas instalados, por fim instale o microcode de seu processador amd-ucode ou intel-ucode.
  7. Depois dos pacotes básicos instalados, será necessário mudar os HOOKS do mkinitcpio e os parâmetros do kernel.
    Edite /etc/mkinitcpio.conf e adicione keyboard keymap depois de autodetect e encrypt lvm2 depois de block, no final, o resultado deve ser parecido com esse HOOKS=(base udev autodetect keyboard keymap modconf block encrypt lvm2 filesystems fsck), depois regere initrd com mkinitcpio -p linux (se foi instalado outro kernel, coloque o nome do kernel).

    Edite /etc/default/grub, adicione cryptdevice=/dev/vda3:archLinux no parâmetro GRUB_CMDLINE_LINUX_DEFAULT.

    Agora vamos instalar o grub, Para instalações usando UEFI grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB --recheck, para BIOS-Legacy grub-install --target=i386-pc /dev/vda, depois gere a configuração do grub grub-mkconfig -o /boot/grub/grub.cfg.
  8. Mude a senha do root, para poder logar quando inicializar o sistema passwd e configure o NetworkManager para ser inicializado pelo systemd systemctl enable NetworkManager
    Pronto, o Arch linux foi instalado, e já pode ser inicializado.

Opcional

Esses passos não são obrigatórios, mas são recomendados, é possível executá-los no ambiente de chroot.

  1. ln -sf /usr/share/zoneinfo/Region/City /etc/localtime, para estabelecer o fuso horário do sistema, horário de brasilia é # ln -sf /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime, depois atualize o relógio do computador hwclock --systohc.
  2. Edite o arquivo /etc/locale.gen e descomente pt_BR-UTF-8, rode o comando locale-gen.
  3. echo LANG=pt_BR.UTF-8 >> /etc/locale.conf e echo KEYMAP=br-abnt2 >> /etc/vconsole.conf.
  4. Coloque o hostname echo hostname >> /etc/hostname e edite o /etc/hosts.
127.0.0.1 localhost
::1 localhost
127.0.1.1 hostname.localdomain hostname
  1. Adicione o seu usuário useradd -m -g users -G wheel usuario, crie uma senha passwd usuario e edite o arquivo sudoers EDITOR=nvim visudo e adicione usuario ALL=(ALL) ALL.
  2. Edite o arquivo /etc/pacman.conf e descomente o multilib
[multilib]
Include = /etc/pacman.d/mirrorlist

Iniciando seu novo sistema

Saia do chroot, com exit e reinicie o computador reboot, se tudo deu certo, você vai ter uma instalação miníma do Arch linux. Se você criou seu usuário, logue com ele, senão, use o root.
Segue alguns passos para tornar a tela preta em um ambiente gráfico normal.

  1. Instale o xorg-server e os drivers de vídeo:
    intel xf86-video-intel libgl mesa
    nvidia nvidia nvidia-libgl mesa nvidia-dkms nvidia-utils nvidia-settings
    amd mesa xf86-video-amdgpu
  2. E por final, instale um desktop enviroment e um display manager.
    Exemplo de instalação do Gnome e GDM, # pacman -S gnome gdm, # systemctl enable gdm. Reinicie o computador novamente.

Se tudo deu certo, aparecerá o display manager e você poderá logar. Com isso você terá uma instalação completa, Arch linux com criptografia de disco luks. Qualquer problema que surgir, estou disponível para ajudar, e também a wiki do Arch e o forum.
Agradeço ao Diolinux pelo tutorial, sem o tutorial, não teria conhecido essa distro incrível.

3 curtidas

Estou pensando em instalar o Arch. Obrigado pelo tutorial!

3 curtidas