Quais são as vantagens do Btrfs para usuários finais?

22

O Btrfs começou a ganhar impulso na substituição do ext4 como o sistema de arquivos padrão de escolha para algumas distribuições, como o Fedora Core 16 . Está disponível experimentalmente em várias outras distribuições ( da Wikipedia: openSUSE 11.3, SLES 11 SP1, Ubuntu 10.10, Sabayon Linux, RHEL6, MeeGo, Debian 6.0 e Slackware 13.37). Certamente não estou pronto para converter todos os servidores do meu local de trabalho (minha escolha do sistema de arquivos é geralmente conservadora), estou pensando em usá-lo em casa e em algumas máquinas de produção não críticas no trabalho.

O Btrfs traz um conjunto de recursos semelhante ao ZFS de várias maneiras. Eu posso entender por que isso seria desejável em um ambiente "corporativo", especialmente com sistemas focados na entrega de armazenamento. Mas como esse mesmo conjunto de recursos é útil para os usuários finais? Que vantagens a lista de recursos do Btrfs me oferece em máquinas cuja função principal não é a apresentação de armazenamento? Que vantagens isso me dá no meu laptop?

Fora do armazenamento corporativo, por que devo me preocupar em mudar para Btrfs a partir do sistema de arquivos Ext testado e verdadeiro?


fonte
2
Você poderia elaborar o ponto "sistema de arquivos padrão de escolha para algumas distribuições" (quero dizer links?) - é o mais interessante.
rozcietrzewiacz
2
Afaik, no formato de disco ainda não é estável. Eu não vou usá-lo até que seja. E se você não pode responder por que é, também não deveria.
Xenoterracide
2
O grande problema na decisão do Fedora é a falta de fsck thread.gmane.org/gmane.linux.redhat.fedora.devel/152285 . fedoraproject.org/wiki/Features/F16BtrfsDefaultFs .
Rufo El Magufo
2
O processo do recurso sempre tem um plano de fallback se o recurso proposto não estiver pronto. Felizmente, neste caso, é fácil - mantenha o status quo. Detalhes neste caso aqui .
mattdm
1
"O Btrfs traz um conjunto de recursos que é semelhante ao ZFS de várias maneiras." De fato, mas não de todas as maneiras. Por exemplo, o ZFS não precisa de um fsck e isso ocorre por design. O ZFS não está corrompido por pânico no SO ou falha de energia do disco.
Jlliagre

Respostas:

21

Do wiki :

Extent based file storage
2^64 byte == 16 EiB maximum file size
Space-efficient packing of small files
Space-efficient indexed directories
Dynamic inode allocation
Writable snapshots, read-only snapshots
Subvolumes (separate internal filesystem roots)
Checksums on data and metadata
Compression (gzip and LZO)
Integrated multiple device support 
    RAID-0, RAID-1 and RAID-10 implementations 
Efficient incremental backup
Background scrub process for finding and fixing errors on files with redundant copies
Online filesystem defragmentation 

Explicação para usuários de desktop:

  • Empacotamento de arquivos pequenos com economia de espaço: Importante para desktops com dezenas de milhares de arquivos (donzelas, repositórios de código, etc.).
  • Alocação dinâmica de inode: Evite os limites do Ext2 / 3/4 no número de inodes. Os limites de inode do Btrfs estão em uma liga totalmente diferente (enquanto os inodes do ext4 são alocados no momento da criação do sistema de arquivos e não podem ser redimensionados após a criação, normalmente em 1-2 milhões, com um limite rígido de 4 bilhões, os inodes do btrfs são alocados dinamicamente conforme necessário, e o limite rígido é 2 ^ 64, cerca de 18,4 quintilhões, o que representa cerca de 4,6 bilhões de vezes o limite rígido do ext4).
  • Instantâneos somente leitura: backups rápidos.
  • Soma de verificação sobre dados e metadados: essencial para a integridade dos dados. Ext4 possui apenas integridade de metadados.
  • Compactação: a compactação LZO é muito rápida.
  • Processo de limpeza em segundo plano para encontrar e corrigir erros em arquivos com cópias redundantes: integridade dos dados.
  • Desfragmentação do sistema de arquivos on-line: o autodefrag no 3.0 irá desfragmentar alguns tipos de arquivos, como bancos de dados (por exemplo, perfis do firefox ou armazenamento do akonadi).

Eu recomendo o kernel 3.0. Também o btrfs é um bom FS para SSD.

Rufo El Magufo
fonte
4
Backups rápidos e reversões sistema completo
psusi
11

Para os benefícios: acredito que serão principalmente os recursos de backup e espelhamento.

Mas por que você ficaria tão apressado em pensar no btrfs como um sistema de arquivos pronto para substituir qualquer um dos seus atuais? Tanto o wiki que você se refere:

(...) it is currently possible to corrupt a filesystem irrecoverably if your 
machine crashes or loses power on disks that don't handle flush requests
correctly. This will be fixed when the fsck tool is ready.

e a documentação do kernel 3.0

  Btrfs filesystem (EXPERIMENTAL) Unstable disk format
  (...)
  Btrfs is highly experimental, and THE DISK FORMAT IS NOT FINALIZED. 
  You should say N here unless you are interested in testing Btrfs 
  with non-critical data.

claramente desencorajá- lo a usar o btrfs para qualquer outro propósito que não o teste.

Mas, quando se trata de uma forma, acredito que o usuário final só terá valor para dados particulares, como itens no diretório pessoal. Não haverá necessidade da rede de segurança de mover as coisas para o lixo - na verdade, será necessário redefinir o "lixo" nos ambientes de desktop. O restante dos recursos provavelmente acabará (para o usuário) parecendo mais rápido (se houver), mas consumindo mais rapidamente o espaço em disco.

rozcietrzewiacz
fonte
5

O BTRFS amadureceu consideravelmente ao longo dos anos (desde que essa pergunta foi feita). Agora é bastante estável para a maioria dos casos de uso simples, mesmo para diferentes níveis de RAID (por exemplo, RAID-1 - estável e fácil de configurar). Dado o fato de o BTRFS armazenar somas de verificação, ele é capaz de detectar de forma confiável a corrupção (diferentemente dos sistemas RAID clássicos, onde apenas a paridade está disponível).
As versões atuais podem até corrigir erros típicos em um sistema de arquivos BTRFS RAID-5 (por exemplo, substituindo uma unidade com falha) (embora o raid56 ainda precise de melhorias, consulte a atualização abaixo ).
Se uma operação de reparo / substituição travar, primeiro atualize o kernel (o que provavelmente corrige esse problema) - e, se necessário, o BTRFS possui alguns recursos de recuperação. Mesmo na pior das hipóteses (como várias falhas de unidade), você poderá copiar os arquivos que ainda estão ok e saberá quais arquivos estão danificados. Portanto, ignorando todos esses outros recursos (como instantâneos, cópias de CoW, subvolumes), o BTRFS pode ser usado se a detecção de corrupção de dados / arquivos for a principal prioridade.

Atualização: em junho de 2016, foi descoberto que a implementação do RAID-5/6 no BTRFS é falha. O BTRFS em geral é estável - mas a implementação do raid56 é muito nova, já foi considerada experimental de qualquer maneira e agora deve ser usada apenas para teste até que seja corrigida. Se você estiver usando RAID-5/6, convém converter para RAID-1. Ele ainda oferece vantagens para os usuários finais, como soma de verificação (outros sistemas de arquivos podem não saber sobre arquivos corrompidos) e proteção se uma unidade falhar.

Referência: o BTRFS às vezes calcula a paridade errada

basic6
fonte
No momento, o RAID 5 e 6 são completamente quebrados no BTRFS e causam perda de dados. Evitar!
Gareth Davidson
1
O RAID-5 foi um mau exemplo nesta resposta. Atualizada.
basic6