Tutorial de Linux / Entenda discos, partições e sistemas de arquivos
Um disco é um dispositivo de armazenamento em blocos, uma partição é uma região delimitada desse dispositivo e um sistema de arquivos organiza arquivos e diretórios. Montar um sistema de arquivos significa conectá-lo à árvore de diretórios. Dispositivos, partições, sistemas de arquivos e pontos de montagem são camadas diferentes.
Esta aula distingue dispositivos de bloco, partições e sistemas de arquivos. A aula sobre montagem e uso do armazenamento, em inglês explica como conectar um sistema de arquivos a um diretório e verificar sua origem real.
Os exercícios de configuração usam uma máquina virtual (VM) convencional Ubuntu 26.04 LTS ou Rocky Linux 9 como referência. Contêineres, WSL e outras versões podem ter serviços e pacotes diferentes. Prepare a recuperação pelo console e registre as versões usando a aula de preparação da máquina virtual, em inglês.
Separe as camadas do armazenamento
| Camada | O que verificar | Ferramentas comuns |
|---|---|---|
| Dispositivo de bloco | Capacidade, tipo e relações entre dispositivos | lsblk |
| Partição ou volume lógico | Região delimitada ou espaço alocado logicamente | lsblk e ferramentas de partição ou LVM |
| Sistema de arquivos | Formato, como ext4 ou XFS, e seu identificador UUID | lsblk -f, blkid |
| Montagem | Caminho de acesso e opções usadas | findmnt, df |
Uma estrutura comum é disco → partição → sistema de arquivos → ponto de montagem, mas essa sequência não é obrigatória. O gerenciamento de volumes lógicos (LVM) pode dividir ou agrupar o armazenamento físico; criptografia e RAID por software também podem acrescentar camadas. Um sistema de arquivos pode ocupar diretamente um dispositivo inteiro. Portanto, a ausência de partições não prova que um disco esteja vazio.
Confira o nome do dispositivo e seu uso real
lsblk -o NAME,TYPE,SIZE,FSTYPE,UUID,MOUNTPOINTS
findmnt -T /
df -hT /
Nomes como sda, vda e nvme0n1 variam com o tipo de dispositivo e a ordem de descoberta. Uma partição NVMe costuma aparecer como nvme0n1p1. Não identifique o disco do sistema ou um disco novo apenas pelo nome: compare capacidade, montagens e identificadores de volume fornecidos pela plataforma. Em versões antigas do lsblk, use MOUNTPOINT se MOUNTPOINTS não for suportado.
lsblk mostra relações entre dispositivos; findmnt -T / identifica a montagem que contém o caminho raiz; df informa o uso do sistema de arquivos. Espaço reservado, metadados, unidades de medida e camadas de armazenamento podem explicar diferenças entre os números. Um dispositivo ausente da saída de df não está necessariamente sem uso.
Diferencie tabela de partições e formato do sistema de arquivos
GUID Partition Table (GPT) e Master Boot Record (MBR) descrevem a organização das partições; ext4 e XFS são formatos de sistema de arquivos. Uma partição de um disco GPT pode conter ext4. Substituir a tabela de partições pode impedir o acesso a dados existentes. Nesta aula, não se cria nem se altera a tabela de partições de um disco real.
ext4 e XFS têm ferramentas de administração e reparo diferentes. As possibilidades de redimensionamento e as exigências de trabalho com o sistema desmontado também diferem. Considere o suporte da distribuição, a manutenção e os procedimentos de backup e restauração. Não force uma ferramenta destinada a outro sistema de arquivos sobre dados existentes.
Crie um sistema de arquivos em uma imagem descartável
Os comandos abaixo criam uma pasta temporária no diretório pessoal e um arquivo de imagem de 128 MiB, ou 134.217.728 bytes. mkfs.ext4 normalmente vem no pacote e2fsprogs. Formatar inicializa o alvo: nunca substitua o caminho por um dispositivo real /dev/.... Primeiro confira se o alvo é um arquivo comum.
Execute uma linha por vez e pare se qualquer etapa falhar. Antes de continuar após mktemp, confira se lab contém o caminho da nova pasta dentro do seu diretório pessoal. Se a criação falhar ou a variável ficar vazia, não execute truncate nem os comandos seguintes. O teste de arquivo antes da formatação não substitui essa verificação. Use somente a pasta recém-criada, sem arquivos de terceiros, e não acrescente sudo para contornar erros do exercício.
lab=$(mktemp -d "$HOME/linux-storage-lab.XXXXXX")
truncate -s 128M "$lab/disk.img"
test -f "$lab/disk.img" && test ! -b "$lab/disk.img" && mkfs.ext4 -F "$lab/disk.img"
file "$lab/disk.img"
dumpe2fs -h "$lab/disk.img" 2>/dev/null | head -n 15
printf "lab=%s\n" "$lab"
Se file identificar um sistema de arquivos da família ext e dumpe2fs mostrar metadados como UUID e contagem de blocos, a estrutura foi criada dentro da imagem. O UUID é um identificador do sistema de arquivos. A opção -F permite a criação no arquivo deste exercício; não autoriza usá-la indiscriminadamente em discos reais. Como a imagem ainda não foi montada, seu conteúdo não está disponível como um diretório comum. O tamanho do arquivo e o espaço utilizável dentro do sistema de arquivos também não são iguais.
O comando com head -n 15 mostra apenas o início do relatório. Não trate o status desse encadeamento, isoladamente, como prova de que dumpe2fs teve sucesso: examine a saída e qualquer falha da etapa de formatação. O redirecionamento 2>/dev/null oculta a saída de diagnóstico de dumpe2fs nesse exemplo.
Verifique o resultado e remova apenas os dados do exercício
O objetivo é distinguir as camadas, não decorar um comando de formatação. A imagem contém ext4 diretamente, sem tabela de partições. Compare essa estrutura com os dispositivos exibidos pelo lsblk. Guarde o caminho impresso se continuar com o exercício de montagem. Caso não use mais a imagem, confira o caminho e o conteúdo da pasta temporária no gerenciador de arquivos antes de excluir somente os arquivos do exercício.
Antes de alterar armazenamento real, tenha um backup restaurável, confirme a identidade do dispositivo e verifique montagens, swap e participação em LVM ou RAID. Se o estado do dispositivo ou do sistema de arquivos for incerto, preserve as evidências e planeje a recuperação antes de formatar ou reescrever partições.




