Estou estudando o BTRFS e estou tendo alguns problemas com a configuração que fiz.
Boa noite pessoal! ![]()
Primeiramente, meus discos são:
- /dev/sda - Samsung EVO860 (500GB)
- /dev/sdb - Kingston A400 (240GB)
- /dev/sdc - Seagate Barracuda (1TB - 64MB - 7200RPM)
- /dev/sdd - Toshiba P300 (2TB - 64MB - 7200RPM)
O problema é: Todos os dados estão sendo alocados no Barracuda (HDD) e por isso sinto o sistema lento, além de praticamente não usar o A400.
Não está funcionando como eu imaginava/queria que fosse.
Meu objetivo é:
- EVO: EFI, SWAP, ROOT
- A400: “cache” para o Barracuda
- Barracuda: /HOME
- P300: TimeShift (Via Snapshots ou RSync, tanto faz, o objetivo é ser ter backup confiável)
Inicialmente eu instalei o Manjaro com auxilio do Architect, fiz uma instalação mínima.
Criei 3 partições dentro do EVO: a EFI, a SWAP e uma BTRFS.
- EFI por causa da inicialização do sistema, achei mais prático dessa forma;
- SWAP, eu prefero numa partição a parte devido ao meu uso intenso em projeto grandes com apps de design gráfico, como o Krita, por exemplo;
- BTRFS para o Manjaro.
O Architect, nesse momento, me sugeriu criar “divisões” (não lembro se foi exatamente o termo >subvolumes< por isso as áspas) para @, @home e @var, eu aceitei, pois esse era o objetivo desde o inicio.
Depois com o sistema instalado, usei o comando:
$ btrfs device add /dev/sdb /dev/sdc
para adicionar a “pool” os discos A400 e Barracuda.
Imaginei que o BTRFS faria um controle inteligente dos discos, sem a necessidade d’eu interferir nele em mais nada.
Porém, o que notei é que após rodar o comando:
$ btrfs filesystem balance /
ele jogou todos os dados para o Barracuda, deixando poucos GB no EVO, o meu disco mais rápido, e praticamente 0 no A400.
Antes do Balance:
Percebam que o uso do EVO (/dev/sda3)
Após o comando Balance:
Acho que meu erro foi ter usado o comando:
$ btrfs device add …
Creio que o correto seria criar as partições:
$ mkfs.btrfs /dev/sdb /dev/sdc
separadamente, e depois adicionar a pool como subvolume?
Dessa forma, o @home será direcionado para o subvolume o qual foi designado (criado) para sê-lo (no caso o Barracuda) via fstab, ou não;
Correto?
Estou considerando em formatar o sistema como um todo nesse final-de-semana, porque não ficou muito legal, e to pensando refaze-lo do zero xD
Já, outra ideia é, como o EVO é muito grande para alocar somente o sistema, pensei criar uma partição de 240GB para usar em RAID0 com o A400.
Eu já fazia isso usando LVM e dm-cache em EXT4, mas não creio que eu deveria delimitar tanto como o FileSystem deve funcionar; Creio que o grande objetivo de FS complexos e inteligentes como o BTRFS e o ZFS, é justamente deixar que ele faça o trabalho de onde, alocar o que, da melhor forma.
Mas talvez, devido ao meu erro inicial, tenha tido essa impressão errada.
Talvez?! ![]()
Muitas pessoas já me aconselharam a voltar para o EXT4, porém meu objetivo é aprender a usar o BTRFS e aproveitar seus recursos de compressão, CoW, deduplicação, snapshots e agrupamento de discos e etc.
Acredito que sistemas como o ZFS e o BTRFS serão o futuro dos FS, por isso já quero aprender a usá-los.
O openZFS por hora, está fora da minha “lista”, sigo a recomendação do mestre Torvalds, no futuro, quando mais consolidado, eu me aventurarei por ele.
Desde já meus sinceros agradecimentos pela atenção ![]()

