O Debootstrap é uma ferramenta poderosa e versátil do ecossistema Debian que permite a instalação de sistemas base Debian em diversos ambientes. Criada para facilitar a instalação de sistemas Debian “do zero”, essa ferramenta se tornou indispensável para administradores de sistemas, desenvolvedores e entusiastas que precisam criar ambientes Debian personalizados.
Debootstrap é um utilitário que instala um sistema base Debian em um subdiretório de outro sistema já instalado. Ele não requer um CD de instalação, apenas acesso a um repositório Debian. Pode ser executado a partir de um sistema operacional já existente, seja ele Debian, Ubuntu, outra distribuição Linux, FreeBSD ou até mesmo Unix.
O processo do Debootstrap é relativamente simples:
O resultado é um sistema base Debian que pode ser posteriormente personalizado e expandido conforme necessário.
Um dos usos mais comuns do Debootstrap é a criação de ambientes chroot (change root). Estes ambientes isolados são úteis para:
O Debootstrap é frequentemente utilizado para criar instalações personalizadas do Debian, como:
Várias ferramentas de nível superior utilizam o Debootstrap como componente fundamental, incluindo:
Em sistemas baseados em Debian/Ubuntu, a instalação é simples:
sudo apt-get install debootstrap
Um exemplo básico de uso do Debootstrap para criar um sistema Debian Bullseye:
sudo debootstrap bullseye /path/to/target/directory http://deb.debian.org/debian
Este comando cria um sistema Debian Bullseye básico no diretório especificado, baixando os pacotes do repositório oficial Debian.
O Debootstrap oferece várias opções avançadas:
--arch
: Especifica a arquitetura (amd64, arm64, etc.)--include
: Adiciona pacotes específicos à instalação básica--exclude
: Exclui pacotes específicos--variant
: Seleciona uma variante de instalação (minbase, buildd, etc.)--foreign
: Prepara a primeira fase de uma instalação em duas etapasProcesso passo a passo para instalar o Debian 12 (Bookworm) em um pen drive USB utilizando o Debootstrap. Este método cria uma instalação completa e inicializável do Debian, não apenas um live USB.
debootstrap
, parted
, grub
, mount
Primeiro, instale as ferramentas necessárias:
sudo apt update
sudo apt install debootstrap parted dosfstools grub2 arch-install-scripts
Insira o pen drive e identifique-o:
lsblk
Este comando listará todos os dispositivos de armazenamento. Seu pen drive será algo como /dev/sdb
ou /dev/sdc
. IMPORTANTE: Confirme cuidadosamente o dispositivo correto para evitar apagar dados de outro disco.
Vamos assumir que o pen drive está em /dev/sdX
(substitua pelo dispositivo real).
Primeiro, limpe qualquer tabela de partições existente e crie uma nova:
sudo parted /dev/sdX mklabel gpt
Crie as partições necessárias:
# Partição de boot EFI (para sistemas UEFI)
sudo parted -a optimal /dev/sdX mkpart ESP fat32 1MiB 513MiB
sudo parted /dev/sdX set 1 boot on
# Partição raiz (/)
sudo parted -a optimal /dev/sdX mkpart primary ext4 513MiB 100%
Formate as partições criadas:
# Formata a partição EFI como FAT32
sudo mkfs.fat -F32 /dev/sdX1
# Formata a partição raiz como ext4
sudo mkfs.ext4 /dev/sdX2
Crie os diretórios de montagem e monte as partições:
# Cria o diretório de montagem
sudo mkdir -p /mnt/debian-usb
# Monta a partição raiz
sudo mount /dev/sdX2 /mnt/debian-usb
# Cria e monta a partição EFI
sudo mkdir -p /mnt/debian-usb/boot/efi
sudo mount /dev/sdX1 /mnt/debian-usb/boot/efi
Use o debootstrap para instalar o sistema base Debian Bookworm:
sudo debootstrap --arch=amd64 bookworm /mnt/debian-usb http://deb.debian.org/debian
Este processo baixará e instalará os pacotes base do Debian Bookworm. Dependendo da sua conexão com a internet, pode levar alguns minutos.
Crie um arquivo fstab para o sistema:
sudo mkdir -p /mnt/debian-usb/etc/
sudo bash -c "cat > /mnt/debian-usb/etc/fstab << 'EOF'
# /etc/fstab: static file system information
UUID=$(sudo blkid -s UUID -o value /dev/sdX2) / ext4 errors=remount-ro 0 1
UUID=$(sudo blkid -s UUID -o value /dev/sdX1) /boot/efi vfat umask=0077 0 1
EOF"
Configure o hostname e os hosts:
# Definir hostname
echo "debian-usb" | sudo tee /mnt/debian-usb/etc/hostname
# Configurar o arquivo /etc/hosts
sudo bash -c "cat > /mnt/debian-usb/etc/hosts << 'EOF'
127.0.0.1 localhost
127.0.1.1 debian-usb
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
EOF"
Configure o arquivo interfaces para a rede:
sudo bash -c "cat > /mnt/debian-usb/etc/network/interfaces << 'EOF'
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug enp0s3
iface enp0s3 inet dhcp
EOF"
Entre no ambiente chroot do sistema recém-instalado:
sudo mount --bind /dev /mnt/debian-usb/dev
sudo mount --bind /dev/pts /mnt/debian-usb/dev/pts
sudo mount --bind /proc /mnt/debian-usb/proc
sudo mount --bind /sys /mnt/debian-usb/sys
sudo chroot /mnt/debian-usb /bin/bash
passwd
apt update
apt upgrade -y
apt install -y linux-image-amd64 grub-efi-amd64 efibootmgr sudo vim networking tasksel locales
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen
locale-gen
update-locale LANG=en_US.UTF-8
dpkg-reconfigure tzdata
useradd -m -s /bin/bash username
passwd username
usermod -aG sudo username
Instale o GRUB no pen drive:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian --removable
update-grub
A opção --removable
é importante pois permite que o sistema seja inicializado em diferentes computadores.
Instale o ambiente desktop de sua preferência:
tasksel
Selecione “Debian desktop environment” e escolha um ambiente como GNOME, KDE, Xfce, etc.
Ou, para uma instalação mais leve, instale diretamente o Xfce:
apt install -y xfce4 lightdm network-manager
Saia do ambiente chroot e desmonte as partições:
exit # Sai do chroot
sudo umount -R /mnt/debian-usb
Remova o pen drive com segurança. Agora você pode inicializar qualquer computador compatível com UEFI usando este pen drive.
Para iniciar o sistema:
Agora você tem um sistema Debian Bookworm completamente funcional em um pen drive USB que pode ser usado em qualquer computador compatível com UEFI!
O Debootstrap é uma ferramenta incrivelmente versátil que forma a espinha dorsal de muitos processos de instalação e implantação no ecossistema Debian. Sua simplicidade aparente esconde uma flexibilidade poderosa que permite criar desde os mais simples ambientes chroot até sistemas complexos totalmente personalizados.
Seja para desenvolvimento, teste, recuperação de sistemas ou criação de ambientes especializados, o Debootstrap oferece um método confiável e eficiente para obter um sistema Debian funcional praticamente em qualquer lugar. Para administradores de sistemas e desenvolvedores que trabalham com distribuições baseadas em Debian, dominar esta ferramenta é uma habilidade valiosa que amplia significativamente as possibilidades de implantação e gerenciamento de sistemas.