Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd

Simples "receita de bolo" para instalar Gentoo binário em desktops com criptografia.

[ Hits: 119 ]

Por: Xerxes em 20/01/2026


Introdução, discos, stage3, chroot e make.conf



Introdução

Artigo testado usando live-USB do Linux Mint 22.3. Mas os comandos devem funcionar em qualquer live Linux.

Este artigo foi feito e testado por mim e, posteriormente, melhorado com ajuda do ChatGPT, principalmente para mudar os comandos para ficar mais fácil de copiar e colar. Por exemplo, ao invés de dizer “edite o arquivo tal e coloque a informação X”, os comandos já fazem isso automaticamente com uso de cat e echo.

Você perceberá que há dois blocos de comandos, um para discos SATA e outro para NVMe. Escolha o bloco que for apropriado para o seu caso.

O que seria um Gentoo binário?

A maioria dos componentes serão pacotes binários. Pouca coisa será compilada na sua máquina, agilizando bastante o processo de instalação. Não pretendo discutir vantagens e desvantagens aqui. A forma tradicional continua disponível no handbook oficial:
Obs.: seguir este artigo implica em apagar o disco inteiro.

Preparação dos discos

Os comandos a seguir são para formatação e criação das partições e estão divididos em dois blocos. O bloco A é para SATA e o B para NVMe.

Arquitetura FINAL (válida para SATA e NVMe)

A ideia central é a seguinte: EFI e /boot ficam fora da criptografia. Todo o sistema fica dentro de um LUKS2.

EFI -> vfat -> /boot/efi [FORA do LUKS] /boot -> ext4 -> /boot [FORA do LUKS] LUKS2 -> Btrfs -> /, /home, /.snapshots

BLOCO A — DISCO SATA / SCSI (/dev/sda)

Parte 1 — Limpar e particionar o disco (UEFI)

sudo -i

wipefs -a /dev/sda

parted -s /dev/sda mklabel gpt

EFI

parted -s /dev/sda mkpart EFI fat32 1MiB 1025MiB

parted -s /dev/sda set 1 esp on

/boot fora do LUKS

parted -s /dev/sda mkpart BOOT ext4 1025MiB 2049MiB

root criptografado

parted -s /dev/sda mkpart ROOT 2049MiB 100%

lsblk

O que foi feito:

Criamos três partições:
  • EFI (vfat)
  • /boot (ext4)
  • root (para LUKS + Btrfs)

Parte 2 — Formatação + LUKS2 (Argon2id)

Agora formatamos EFI e /boot, e criamos o container criptografado.

mkfs.vfat -F32 /dev/sda1

mkfs.ext4 /dev/sda2

cryptsetup luksFormat \
--type luks2 \
--pbkdf argon2id \
--pbkdf-memory 262144 \
--pbkdf-parallel 2 \
/dev/sda3

cryptsetup open /dev/sda3 cryptroot

luksFormat: cria o container criptografado (Argon2id).

Parte 3 — Btrfs + subvolumes

mkfs.btrfs /dev/mapper/cryptroot

mount /dev/mapper/cryptroot /mnt

btrfs subvolume create /mnt/@

btrfs subvolume create /mnt/@home

btrfs subvolume create /mnt/@snapshots

umount /mnt

Por quê subvolumes?
  • facilitam snapshots
  • evitam múltiplas partições
  • tornam rollback e manutenção mais simples

Parte 4 — Montagem FINAL

mkdir -p /mnt/gentoo

mount -o subvol=@,compress=zstd /dev/mapper/cryptroot /mnt/gentoo

mkdir -p /mnt/gentoo/{home,.snapshots,boot}

mount -o subvol=@home,compress=zstd /dev/mapper/cryptroot /mnt/gentoo/home

mount -o subvol=@snapshots,compress=zstd /dev/mapper/cryptroot /mnt/gentoo/.snapshots

mount /dev/sda2 /mnt/gentoo/boot

mkdir -p /mnt/gentoo/boot/efi

mount /dev/sda1 /mnt/gentoo/boot/efi

BLOCO B — DISCO NVMe (/dev/nvme0n1)

Atenção: em NVMe as partições são p1, p2, p3.

Parte 1 — Limpar e particionar o disco (UEFI)

sudo -i

wipefs -a /dev/nvme0n1

parted -s /dev/nvme0n1 mklabel gpt

EFI

parted -s /dev/nvme0n1 mkpart EFI fat32 1MiB 1025MiB

parted -s /dev/nvme0n1 set 1 esp on

/boot fora do LUKS

parted -s /dev/nvme0n1 mkpart BOOT ext4 1025MiB 2049MiB

root criptografado

parted -s /dev/nvme0n1 mkpart ROOT 2049MiB 100%

lsblk

Parte 2 — Formatação + LUKS2 (Argon2id)

mkfs.vfat -F32 /dev/nvme0n1p1

mkfs.ext4 /dev/nvme0n1p2

cryptsetup luksFormat \
--type luks2 \
--pbkdf argon2id \
--pbkdf-memory 262144 \
--pbkdf-parallel 2 \
/dev/nvme0n1p3

cryptsetup open /dev/nvme0n1p3 cryptroot

Parte 3 — Btrfs + subvolumes

mkfs.btrfs /dev/mapper/cryptroot

mount /dev/mapper/cryptroot /mnt

btrfs subvolume create /mnt/@

btrfs subvolume create /mnt/@home

btrfs subvolume create /mnt/@snapshots

umount /mnt

Parte 4 — Montagem FINAL

mkdir -p /mnt/gentoo

mount -o subvol=@,compress=zstd /dev/mapper/cryptroot /mnt/gentoo

mkdir -p /mnt/gentoo/{home,.snapshots,boot}

mount -o subvol=@home,compress=zstd /dev/mapper/cryptroot /mnt/gentoo/home

mount -o subvol=@snapshots,compress=zstd /dev/mapper/cryptroot /mnt/gentoo/.snapshots

mount /dev/nvme0n1p2 /mnt/gentoo/boot

mkdir -p /mnt/gentoo/boot/efi

mount /dev/nvme0n1p1 /mnt/gentoo/boot/efi

Parte 5 — Stage3 + chroot (igual para ambos)

Aqui instalamos o Gentoo base.

cd /mnt/gentoo

Abra o navegador e acesse:
Copie o link do Stage3 Systemd:
Linux: Instalação do Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Baixe o Stage3 systemd e execute:

wget -c [URL_DO_STAGE3]

tar xpvf stage3-*.tar.xz --xattrs-include='*.*' --numeric-owner

cp --dereference /etc/resolv.conf /mnt/gentoo/etc/

mount --types proc /proc /mnt/gentoo/proc

mount --rbind /sys /mnt/gentoo/sys && mount --make-rslave /mnt/gentoo/sys

mount --rbind /dev /mnt/gentoo/dev && mount --make-rslave /mnt/gentoo/dev

mount --bind /run /mnt/gentoo/run && mount --make-slave /mnt/gentoo/run

chroot /mnt/gentoo /bin/bash

source /etc/profile

Parte 6 — make.conf

Aqui definimos otimizações, perfil binário (EMERGE_DEFAULT_OPTS="--binpkg-respect-use=y --getbinpkg=y"), driver de vídeo, licença...

Modelo genérico UNIVERSAL (funciona na grande maioria dos desktops)

Caso não queira configurar o make.conf pode usar este genérico. Basta copiar e colar para gerar o make.conf:

cat <<'EOF' > /etc/portage/make.conf
COMMON_FLAGS="-O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"

MAKEOPTS="-j$(nproc)"

VIDEO_CARDS="amdgpu radeonsi intel i915 nouveau"
INPUT_DEVICES="libinput"

USE="systemd -elogind"
ACCEPT_LICENSE="*"

FEATURES="getbinpkg"
EMERGE_DEFAULT_OPTS="--binpkg-respect-use=y --getbinpkg=y"

LC_MESSAGES=C.utf8
EOF

Exemplo 1 (usei em uma máquina Intel)

cat <<'EOF' > /etc/portage/make.conf
COMMON_FLAGS="-march=haswell -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"

MAKEOPTS="-j5"

VIDEO_CARDS="intel i915"
INPUT_DEVICES="libinput"

USE="systemd -elogind"
ACCEPT_LICENSE="*"

FEATURES="getbinpkg"
EMERGE_DEFAULT_OPTS="--binpkg-respect-use=y --getbinpkg=y"

LC_MESSAGES=C.utf8
EOF

Exemplo 2 — (usei em um AMD Ryzen (znver2))

cat <<'EOF' > /etc/portage/make.conf
COMMON_FLAGS="-march=znver2 -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"

MAKEOPTS="-j12"

VIDEO_CARDS="amdgpu radeonsi"
INPUT_DEVICES="libinput"

USE="systemd -elogind"
ACCEPT_LICENSE="*"

FEATURES="getbinpkg"
EMERGE_DEFAULT_OPTS="--binpkg-respect-use=y --getbinpkg=y"

LC_MESSAGES=C.utf8
EOF

Na página seguinte veremos kernel, fstab e outros.
    Próxima página

Páginas do artigo
   1. Introdução, discos, stage3, chroot e make.conf
   2. Perfil, kernel, initramfs, GRUB, fstab
   3. Timezone, teclado, input, usuário, Plasma e Swap
   4. Checklist antes de reiniciar
   5. Flatpak, codecs, overlay GURU, zram e conclusão
Outros artigos deste autor

Instalação do Gentoo em HD Externo para dual boot com Windows

Melhorando a experiência com Cinnamon no LMDE

Flatpak: usar ou não usar?

Porque eu uso Linux Mint

Instalação do Funtoo a partir do Debian já instalado

Leitura recomendada

Utilizando um SSD ao lado de um HD em Micro Desktop

Ubuntu Linux - Visão Geral

Lendo as permissões dos arquivos Linux

Guia Openbox

Necessidade do profissional de informática

  
Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts