Sempre que você instala o Linux, você pode escolher um sistema de arquivos, especialmente quando você está particionando manualmente seu disco.
A opção mais comum é o Ext4, que é usado como padrão em muitas distribuições Linux para desktop. Mas, depois que o Fedora mergulhou para usar o Btrfs como seu sistema de arquivos padrão, muitos usuários de Linux de desktop mudaram para o Btrfs.
O que é o Btrfs?
Para começar, o Btrfs é um moderno sistema de arquivos copy-on-write para Linux com recursos avançados para tolerância a falhas, reparo e fácil administração. O Btrfs usa Cópia em gravação para todos os arquivos, o que significa que se um arquivo for modificado/gravado no armazenamento, o arquivo não será substituído, mas uma cópia do arquivo será criada. Esse mecanismo ajuda a criar instantâneos com tamanho mínimo, pois os arquivos não modificados não precisam ser copiados para criar o instantâneo.
O Btrfs é licenciado sob a GPL e é de código aberto.
Vantagens do Btrfs sobre o Ext4
Vamos falar sobre as vantagens que o Btrfs possui sobre o sistema de arquivos ext4 tradicional e mais popular.
Instantâneos
Esta é a característica mais desejada do Btrfs. Como mencionado anteriormente, os instantâneos são criados com tamanho mínimo devido ao uso de Cópia em gravação.
Esses instantâneos podem ser usados para restaurar o estado do nosso sistema para um determinado sem usar mais armazenamento. Alternar para um instantâneo Btrfs é muito rápido.
Isso torna a recuperação do sistema perfeita, o que é desejado pelos usuários do Linux, especialmente aqueles que usam distribuições de lançamento contínuo (que suportam pacotes mais recentes, tornando o sistema instável).
Sempre que uma alteração em pacotes é feita, um instantâneo é criado. Dessa forma, é possível restaurar o sistema para um estado anterior se algo der errado. Esses instantâneos também estão disponíveis no momento da inicialização.
Btrfs Assistant pode ser usado para o mesmo. Se restaurar o sistema para o instantâneo destacado, ele restaurará o sistema para o estado anterior ao que foi feito no instantâneo.
Alternativamente, se você não conseguir fazer login no seu sistema, um projeto chamado grub-btrfs pode ser usado para inicializar em instantâneos diretamente do GRUB bootloader, como você pode ver na captura de tela abaixo.
Compressão
O Btrfs também suporta compactação de dados, reduzindo o tamanho do arquivo para que você possa armazenar mais dados em menos espaço. Isso também aumenta a vida útil dos dispositivos de armazenamento de mídia baseados em flash (por exemplo, SSD, eMMC) à medida que menos dados são gravados no disco.
Ele também aumenta o desempenho para um processo que não carrega muitos arquivos do seu HDD. No entanto, se um processo precisar acessar mais arquivos do HDD, isso pode causar alguma lentidão, pois a descompactação é feita para acessar os arquivos.
Subvolumes
Os subvolumes se comportam como uma partição, mas não são a partição de disco real. Eles podem ser comparados a algo como Volumes usados no LVM (Logical Volume Manager).
Os subvolumes tornam o redimensionamento rápido e flexível em comparação com partições reais. Curiosamente, um instantâneo Btrfs também é um subvolume que compartilha seus dados com outro subvolume.
Por exemplo, para obter uma lista de subvolumes, você pode inserir o comando a seguir e ele também lista os instantâneos como subvolumes.
sudo btrfs subvolume list -p /
O melhor caso de uso de subvolumes é criar root e home como subvolumes separados que alocarão espaço automaticamente de acordo com o requisito. Isso elimina o dilema de escolher os tamanhos de partição root e home durante a instalação do Linux.
Ter o diretório Home em um subvolume separado tem outra vantagem. Os instantâneos do sistema ficarão muito grandes se você tiver o diretório Home incluído no snapshot.
Como você pode ver na captura de tela abaixo listando os Subvolumes no Assistente Btrfs.
Desvantagens do Btrfs
Nada neste mundo tem apenas pontos positivos. Btrfs não é exceção.
Você viu o que ele faz melhor do que o Ext4. Vamos dar uma olhada nas coisas em que não é bom.
RAID
RAID (Redundant Array of Independent Disks) é uma tecnologia de armazenamento que combina vários componentes da unidade de disco em uma unidade lógica. É benéfico em servidores principalmente para o desempenho e prevenção de perda de dados que fornece.
O Btrfs suporta RAID, no entanto, os modos RAID 5 e RAID 6 são considerados instáveis por enquanto. Como o RAID 5 é uma das melhores opções para RAID, ele pode impedir a adoção de Btrfs em servidores.
Fragmentação
A fragmentação de arquivos pode não ser um problema para SSDs, mas ainda há muitas pessoas usando unidades com disco. Isso prejudicará o desempenho ao longo do tempo nesses casos, também a desfragmentação de um arquivo criará uma cópia separada desse arquivo.
Portanto, o tamanho do snapshot também aumenta devido à desfragmentação. Você pode desduplicar o arquivo, mas isso cria mais problemas para o usuário.
Você ficará surpreso ao saber que XFS ou Ext4 não requerem desfragmentação.
Criptografia
Ao contrário do Ext4, o Btrfs não oferece suporte à criptografia no nível do sistema de arquivos. No entanto, você pode usar métodos de terceiros para criptografar um sistema de arquivos Btrfs.
Recuperação de corrupção
A verificação do sistema de arquivos não é possível em um sistema de arquivos Btrfs montado, mas pode ser usada para verificar ou reparar um sistema de arquivos Btrfs desmontado. No entanto, isso pode não ser capaz de reparar erros do sistema de arquivos (mesmo os menores).
Isso se deve ao desenvolvimento pesado que está sendo feito na ferramenta de verificação do sistema de arquivos Btrfs.
Conclusão
Btrfs pode parecer um trabalho em andamento e você pode verificar o status de estabilidade do site oficial a qualquer momento. No entanto, está sob desenvolvimento pesado e ativo e está melhorando em um ritmo maior, o que pode nos deixar animados.
A recomendação é que, se você tiver um SSD e usar uma distribuição de lançamento contínuo, vá em frente para a recuperação perfeita usando instantâneos. Caso contrário, use o bom e velho Ext4 para estabilidade e desempenho.
Por favor, não tome nossa palavra para isso, pois este artigo é apenas sobre opinião e os prós e contras listados podem não ser os mesmos para todos os casos de uso.
Esperamos que o assunto tenha ficado um pouco mais claro sobre o uso do Btrfs do Linux. Se você notar algum erro técnico, deixe-nos saber na seção de comentários.
Claro, alguns pontos podem ser discutíveis. Sinta-se à vontade para expressá-lo nos comentários.