Etiqueta: Linux

  • Guia de Instalação Debian com partição LVM

    Guia de Instalação Debian com partição LVM














    Manual completo para configuração de partições com Logical Volume Manager numa VM ESXi

    📝 Artificial Intelligence
    📅 Fevereiro 2026
    ⏱️ ~10 min leitura

    1. Introdução

    Este guia fornece instruções detalhadas para instalar o Debian Linux com particionamento manual utilizando LVM (Logical Volume Manager) numa máquina virtual. O LVM oferece flexibilidade para redimensionar, expandir e gerir partições de disco dinamicamente, sem necessidade de reinstalar o sistema operativo.

    Este guia foi escrito para uma máquina virtual VMware ESXi com um disco virtual de 512 GB e 64 GB de RAM, em modo de arranque BIOS.

    2. O que é o LVM?

    O LVM é uma camada de abstração entre os discos físicos e os filesystems que o Linux utiliza. Em vez de criar partições tradicionais diretamente no disco, o LVM introduz três camadas:

    Physical Volumes (PV)
    /dev/sda2
    /dev/sdb1

    Volume Group (VG)
    vg0 — Pool de Armazenamento

    Logical Volumes (LV)
    lv_root /
    lv_var /var
    lv_home /home
    lv_tmp /tmp

    As principais vantagens do LVM incluem:

    • Redimensionamento dinâmico — aumentar ou reduzir volumes sem downtime
    • Expansão com novos discos — adicionar discos ao VG sem reconstruir partições
    • Snapshots — criar cópias instantâneas para backups ou testes
    • Migração de dados — mover dados entre discos físicos de forma transparente

    3. Layout de Partições Recomendado

    A estratégia fundamental é não alocar todo o espaço. Deixar aproximadamente 55% do disco livre no Volume Group permite expandir qualquer partição posteriormente conforme a utilização real.

    Mount Point Tamanho Filesystem Finalidade
    /boot 1 GB ext2 Bootloader (fora do LVM, partição primária)
    swap 16 GB swap Memória virtual
    / 60 GB ext4 Sistema operativo e pacotes instalados
    /var 100 GB ext4 Logs, bases de dados, websites, mail
    /tmp 10 GB ext4 Ficheiros temporários (noexec,nosuid,nodev)
    /home 40 GB ext4 Dados de utilizador, scripts, chaves SSH
    Livre (VG) ~285 GB Reserva para expansão futura
    💡 Dica
    A reserva de ~55% do disco livre é a chave desta configuração. Permite expandir qualquer LV com um simples comando, sem reinstalar o sistema.

    4. Escolha do Filesystem: ext4

    O ext4 é recomendado para todas as partições devido à sua estabilidade comprovada, verificações de filesystem rápidas, e capacidade de crescer e reduzir logical volumes. Combinado com o LVM, o ext4 oferece tudo o necessário: snapshots e redimensionamento flexível.

    Usar ext2 para /boot uma vez que o bootloader não necessita de journaling.

    Característica ext4 XFS Btrfs
    Estabilidade Excelente Excelente Boa
    Redimensionar Crescer e reduzir Apenas crescer Crescer e reduzir
    Snapshots Via LVM Via LVM Nativo
    Reparação fsck rápido xfs_repair rápido Mais lento

    5. Dimensionamento do Swap

    Para uma VM com 64 GB de RAM que não utiliza hibernação, 16 GB de swap proporciona uma margem confortável. Se o swap alguma vez esgotar, é possível criar espaço adicional a partir da reserva do VG.

    Cenário Swap Recomendado
    Sem hibernação (servidores/VMs) 4–8 GB
    Com hibernação Igual à RAM (64 GB)
    Pressão de memória elevada 16 GB

    6. Instalação Passo a Passo

    1 Iniciar o Instalador Debian

    Arrancar a partir da ISO de instalação do Debian. Prosseguir pela configuração de idioma, fuso horário e rede até chegar ao passo de particionamento.

    2 Selecionar Particionamento Manual

    No ecrã de método de particionamento, selecionar “Manual” em vez de qualquer opção guiada. Isto dá controlo total sobre os tamanhos e tipos de partições.

    3 Criar a Partição /boot

    1. Selecionar o disco (ex: disco virtual de 512 GB)
    2. Criar uma nova partição de 1 GB
    3. Definir tipo como Primary
    4. Definir “Use as” como ext2
    5. Definir mount point como /boot
    6. Definir Bootable flag como On
    7. Selecionar “Done setting up the partition”

    4 Criar o Physical Volume para LVM

    1. Selecionar o espaço livre restante no disco
    2. Criar uma nova partição usando todo o espaço restante (max)
    3. Definir tipo como Primary
    4. Definir “Use as” como “physical volume for LVM”
    5. Selecionar “Done setting up the partition”

    5 Configurar o Logical Volume Manager

    1. Selecionar “Configure the Logical Volume Manager” no menu de particionamento
    2. Confirmar a escrita de alterações quando solicitado (selecionar Yes)
    3. Selecionar “Create volume group”
    4. Nomear o volume group: vg0
    5. Selecionar a partição grande marcada como physical volume for LVM
    6. Confirmar a criação

    6 Criar os Logical Volumes

    Para cada logical volume, selecionar “Create logical volume”, escolher vg0, e definir nome e tamanho:

    1. lv_swap — 16 GB
    2. lv_root — 60 GB
    3. lv_var — 100 GB
    4. lv_tmp — 10 GB
    5. lv_home — 40 GB
    ⚠️ Importante
    Deixar os restantes ~285 GB sem alocar. Selecionar “Finish” para sair da configuração do LVM.

    7 Atribuir Filesystems e Mount Points

    De volta ao ecrã de particionamento, cada logical volume estará listado. Selecionar cada um e configurar:

    1. lv_swap → Use as: swap area
    2. lv_root → Use as: ext4, Mount point: /
    3. lv_var → Use as: ext4, Mount point: /var
    4. lv_tmp → Use as: ext4, Mount point: /tmp (adicionar opções noexec, nosuid, nodev)
    5. lv_home → Use as: ext4, Mount point: /home

    8 Finalizar e Gravar Alterações

    Selecionar “Finish partitioning and write changes to disk” e confirmar com Yes. O instalador formatará todas as partições e prosseguirá com a instalação do sistema base.

    9 Completar a Instalação

    O instalador continuará com:

    1. Configuração da password de root
    2. Criação da conta de utilizador
    3. Seleção do mirror (usar ftp.pt.debian.org para Portugal)
    4. Seleção de software (servidor SSH recomendado)
    5. Instalação do bootloader GRUB (instalar no disco principal, ex: /dev/sda)

    7. Verificação Pós-Instalação

    Após o reinício do sistema, verificar a configuração LVM com os seguintes comandos:

    lsblk # Ver layout dos dispositivos de bloco
    vgdisplay vg0 # Mostrar detalhes do volume group e espaço livre
    lvs # Listar todos os logical volumes
    df -h # Mostrar utilização dos filesystems montados

    O comando vgdisplay mostrará os ~285 GB livres no VG, prontos para expandir qualquer partição quando necessário.

    8. Expansão de Partições

    Quando uma partição necessitar de mais espaço, utilizar a reserva não alocada no volume group:

    # Expandir /var em mais 30 GB
    lvextend -L +30G /dev/vg0/lv_var
    resize2fs /dev/vg0/lv_var

    Isto expande /var em 30 GB sem qualquer downtime ou reinstalação.

    💡 Dica
    Esta é a grande vantagem de deixar espaço livre no VG — expansão instantânea sem necessidade de backups ou reinstalações.

    9. Redução dos Reserved Blocks

    Por defeito, o ext4 reserva 5% de cada partição exclusivamente para o utilizador root. Em partições grandes, isto desperdiça espaço significativo. Para mount points não-root, reduzir para 1%:

    # Verificar blocos reservados actuais
    tune2fs -l /dev/vg0/lv_home | grep -i reserved

    # Reduzir para 1% nas partições não-root
    tune2fs -m 1 /dev/vg0/lv_var
    tune2fs -m 1 /dev/vg0/lv_home

    # Manter 5% no / (root) para segurança do sistema

    ℹ️ Nota
    Manter os 5% na partição raiz (/) protege o sistema caso um processo descontrolado encha o disco. Para todas as outras partições, reduzir é seguro.

    10. Segurança: Hardening do /tmp

    Montar /tmp com opções restritivas impede a execução de binários maliciosos a partir do diretório temporário. Verificar que o /etc/fstab contém as opções noexec, nosuid e nodev na entrada do /tmp.

    Esta é uma medida de segurança rápida e eficaz, recomendada para todos os servidores de produção e ambientes de treino de cibersegurança.

    11. Instalação de Ferramentas Kali (Opcional)

    Se planeia instalar o metapackage kali-linux-everything, tenha em conta que requer aproximadamente 25–30 GB de espaço para pacotes. Expandir a partição root previamente:

    # Expandir root para acomodar todas as ferramentas Kali
    lvextend -L 90G /dev/vg0/lv_root
    resize2fs /dev/vg0/lv_root

    # Após instalação, limpar cache do apt para recuperar espaço em /var
    apt clean

    ⚠️ Atenção
    O apt faz cache dos pacotes .deb descarregados em /var/cache/apt/. Executar apt clean após a instalação para libertar espaço no /var.