Para muitos usuários do Linux, o particionamento é a parte mais estressante da instalação. É aquele momento em que você verifica tudo, esperando não limpar a unidade errada ou acabar com um layout do qual se arrependerá mais tarde.
Gosto de pensar em um disco como um gabinete. As “gavetas” fixas são divisórias e, se uma for muito pequena, consertá-la mais tarde significa redimensionar, mover as coisas e esperar que nada quebre no processo.
Mas e se as divisórias não fossem como as gavetas fixas? E se eles fossem como aquelas prateleiras ajustáveis que pudessem se adaptar conforme suas necessidades mudassem?
Isso é exatamente o que os subvolumes do Btrfs trazem para a mesa. Os subvolumes são um dos recursos mais poderosos do Sistema de arquivos Btrfs que fornece árvores de diretório montáveis de forma independente que compartilham o mesmo conjunto de discos subjacente.
Vou discutir especificamente esse recurso de subvolume e por que ele muda a forma como você pensa sobre o gerenciamento de disco. E depois que você se acostuma com eles, é difícil voltar atrás.
O problema com o particionamento tradicional

Embora a analogia esteja correta, vamos ver a coisa real.
Com um típico Configuração Ext4você decide tudo antecipadamente. Talvez você dê 50 GB para / e o resto para /home. Parece razoável, até que não é.
Alguns meses depois, sua partição raiz fica cheia graças a Pacotes planoscontêineres ou atualizações do sistema. Enquanto isso, sua partição inicial ainda pode ter centenas de gigabytes sem uso. O sistema não pode emprestar esse espaço, mesmo que precise dele desesperadamente.
Essa é a limitação das partições fixas. Os subvolumes Btrfs foram projetados para resolver exatamente isso.
Uma abordagem mais inteligente com subvolumes
Btrfs adota uma abordagem diferente. Em vez de dividir o disco em partes rígidas, ele cria um pool de armazenamento compartilhado.
Subvolumes agem como divisórias externas, você pode montar uma como raiz e outra como casa, mas sob o capô, todas elas são retiradas do mesmo espaço livre. Não há necessidade de redimensionar nada. Se uma parte do seu sistema precisar de mais armazenamento, ele simplesmente usará o que estiver disponível.
Isso funciona porque os subvolumes não são dispositivos de bloco separados. Eles são namespaces dentro de um único sistema de arquivos Btrfs. Você obtém os benefícios organizacionais das partições sem sua rigidez.
Essa flexibilidade faz uma enorme diferença no uso diário.
Verifique se você já está usando o subvolume Btrfs
Se você estiver ligado Fedora ou openSUSEé provável que você já esteja usando o Btrfs. Ainda assim, você pode confirmar o tipo do seu sistema de arquivos com:
findmnt -no FSTYPE /
E se você estiver usando Btrfs, é quase certo que os subvolumes já estejam configurados para você. Para verificar o layout do seu subvolume diretamente:
sudo btrfs subvolume list /
Você provavelmente verá entradas como root e home. Este é um “layout plano” comum, onde root seu sistema principal ( / ) e home representa seus arquivos pessoais.
Embora pareçam separados, são apenas subvolumes diferentes que compartilham o mesmo espaço em disco. Você pode confirmar isso verificando como eles são montados usando o comando mount:
mount | grep btrfs
Esta saída mostra como os subvolumes Btrfs são montados e usados pelo sistema. Ambas as raízes (/) e casa (/home) vêm da mesma partição física. Isto confirma que nenhuma partição separada é usada.
Instantâneos: o recurso matador dos subvolumes
Os instantâneos são onde o Btrfs realmente brilha e é importante entender o porquê.
No Btrfs, um instantâneo é em si um subvolume. Ao tirar um instantâneo, você pede ao Btrfs para criar um novo subvolume que inicialmente compartilhe todos os mesmos dados do original, sem realmente copiar nada e isso acontece quase instantaneamente. Mesmo em sistemas grandes, ele não copia todos os seus dados; apenas registra o estado atual.
Primeiro, crie um diretório para snapshots:
sudo mkdir /snapshotsEm seguida, tire um instantâneo do seu subvolume raiz:
sudo btrfs subvolume snapshot / /snapshots/before-update
É isso. Agora você tem um instantâneo completo do seu sistema antes de fazer alterações. Se uma atualização der errado, você terá um substituto pronto.
Agora verifique:
sudo btrfs subvolume list /
Você vê o snapshots/before-update listado ao lado do root e home subvolumes porque é um subvolume, apenas aquele que nasceu de uma operação de snapshot.
💡
Você pode automatizar o agendamento de snapshots inteiramente por meio de subvolumes usando uma ferramenta como o snapper. Mais sobre isso em algum outro tutorial.
Como os subvolumes tornam os instantâneos eficientes: cópia na gravação
Na seção anterior, mencionei que os instantâneos são quase instantâneos e quase não ocupam espaço extra quando criados pela primeira vez. Isso é possível devido à forma como os subvolumes usam Copy-on-Write (CoW) internamente.
Veja, quando dois subvolumes, root e seu snapshot em nosso exemplo, compartilham um bloco de dados, nenhum deles realmente contém uma cópia. Ambos apontam para os mesmos dados subjacentes. Somente quando um deles mudanças esses dados, o Btrfs grava as alterações em um local diferente, atualizando o ponteiro apenas para esse subvolume. O outro subvolume continua apontando para o original.
É por isso:
- Os instantâneos são criados quase instantaneamente, mesmo em sistemas grandes
- Um novo snapshot quase não usa espaço adicional em disco
- Os dados originais nunca são perdidos no meio da gravação se algo der errado
Compreendendo o uso do disco com subvolumes
Os relatórios de espaço em disco podem parecer um pouco confusos com o Btrfs. Ferramentas tradicionais como df -h nem sempre mostram a imagem completa porque os instantâneos compartilham dados.
Para uma visão mais clara, use:
sudo btrfs filesystem usage /
Se o seu disco parecer cheio inesperadamente, os instantâneos antigos costumam ser o motivo. Como cada instantâneo é um subvolume que contém referências a dados, a exclusão de um arquivo no sistema ativo não libera espaço se um instantâneo mais antigo ainda contiver uma referência a ele.
Limpar subvolumes de snapshots antigos é a solução e o processo é simples:
sudo btrfs subvolume delete /snapshots/old-snapshot-nameAs desvantagens dos subvolumes
Os subvolumes apresentam compensações.
Como cada gravação em um subvolume passa por Copy-on-Write, cargas de trabalho com gravação pesada, como bancos de dados ou imagens de disco de máquinas virtuais, podem sofrer uma penalidade no desempenho. Com o tempo, as gravações CoW também podem levar à fragmentação nos subvolumes.
Para diretórios dentro de um subvolume onde você deseja desativar o comportamento do CoW (e, portanto, perder a cobertura do snapshot para esses caminhos), você pode desativá-lo com:
chattr +C /var/lib/libvirt/images
Há também alguma manutenção em segundo plano, como balanceamento de armazenamento no pool, mas a maioria das distribuições modernas cuida disso automaticamente.
Conclusão
Como você pode ver, os subvolumes do Btrfs alteram o modelo fundamental de como o armazenamento é organizado. Em vez de partições fixas no momento da instalação, você define limites lógicos com subvolumes que compartilham o mesmo pool e podem ser capturados individualmente instantaneamente.
A flexibilidade, os instantâneos e o uso eficiente do disco que acompanham o Btrfs se devem ao seu recurso de subvolumes. Pool compartilhado, compartilhamento de dados CoW e rastreamento de estado por subvolume, depois de entender o funcionamento dos subvolumes, você começará a apreciar ainda mais o Btrfs.
E quando você se acostumar a trabalhar dessa forma, voltar ao sistema de arquivos tradicional será quase impossível. Quero dizer, é por isso que o Btrfs é a escolha de um sistema Linux moderno, certo?
Deseja saber mais sobre Software Livre Clique Aqui!

Perito em Computação Forense e Crimes Cibernéticos
Investigação Digital | Laudos Técnicos | Resposta a Incidentes
Bacharel em Sistemas da Informação, Certificado Microsoft Azure IA e MOS. Trabalho como Administrador de Redes, Firewall e Servidores Windows e Linux!
Minhas atividades favoritas são: Caminhar, Fazer Trilhas, Natureza, Insetos e claro ler sobre Tecnologia.

