Introdução

BTRFS (B-tree File System) é um sistema de ficheiros moderno que suporta características avançadas como snapshots, subvolumes, e suporte para raid integrado. Neste tutorial vamos ver como criar um disco BTRFS em RAID 0 para partilhar entre o Linux e o Windows, para utilizar por exemplo para um disco de jogos num sistema dual-boot.

RAID 0, também conhecido como “striping”, divide os dados através dos múltiplos discos para aumentar o desempenho

Pré-requisitos

Antes de começar, certifica-te que tens:

  • Um sistema com ambos o Linux e o Windows em modo dual boot.
  • WinBTRFS a driver de BTRFS para Windows, transfere a ultima versão na página “Releases” e com o botão direito no ficheiro btrfs.inf seleciona instalar. Depois disso reinicia o sistema.
  • Pelo menos dois discos idênticos (e.g., /dev/sdb, /dev/sdc) que quiseres utilizar no RAID 0.
  • Privilégios administrativos.

Before proceeding

Vou efetuar a configuração do raid no linux devido ao facto de que o BTRFS não é nativo ao Windows e tem melhor suporte no Linux, no entanto com as drivers de BTRFS talvez seja possível efetuar este processo através do Windows.

Passo 1: Instalar as BTRFS Tools

Primeiro, precisas de instalar as BTRFS tools. Isto inclúi todas as ferramentas necessárias para criar e gerir sistemas de ficheiros BTRFS.

sudo apt-get update
sudo apt-get install btrfs-progs

Para outras distribuições, utiliza o gestor de pacotes do sistema apropriado, como o yum para CentOS ou dnf para Fedora.

Passo 2: Cria o sistema de ficheiros BTRFS

Agora, cria o sistema de ficheiros BTRFS nos dispositivos pretendidos. Nest exemplo, vamos utilizar /dev/sdb1 e /dev/sdc1.

Configuração particionada vs diretamente no disco

Deves ter reparado que estou a utilizar partições(/dev/sdb1) e não os dispositivos/discos(/dev/sdb), Isto é porque particionei os discos com GPT, Podes criar novas partições limpas com o sistema de ficheiros “Linux Filesystem” e utilizar o mkfs.btrfs para formatar as partições como descrito de seguida, também podes utilizar os discos diretamente, existem discussões sobre os positivos e negativos de ambos 1, 2

Aviso

Isto vai apagar os dados nos discos, se existir outro sistema de ficheiros o mkfs vai pedir para escrever por cima do mesmo.

sudo mkfs.btrfs -d raid0 /dev/sdb1 /dev/sdc1
  • -d raid0 especifica que os dados devem ser “divididos” entre discos
  • /dev/sdb1 /dev/sdc1 são as partições que vão formar o RAID 0.

Passo 3: Monta o sistema de ficheiros BTRFS

Assim que o sistema de ficheiros estiver criado, terás de montá-lo para o poder aceder.

  1. Cria um ponto de montagem:

    sudo mkdir /mnt/btrfs-raid0

  2. Faz scan dos dispositivos:

    sudo btrfs device scan

  3. Monta o BTRFS RAID 0:

    sudo mount /dev/sdb1 /mnt/btrfs-raid0

    Apesar de termos configurado um sistema de ficheiros com múltiplos dispositivos, o BTRFS permite montar especificando apenas um dos dispositivos.

Passo 4: Verify the RAID 0 Setup

Para verificar que o sistema de ficheiros BTRFS está corretamente configurado em RAID 0, podes utilizar o seguinte comando:

sudo btrfs filesystem df /mnt/btrfs-raid0

Isto vai apresentar informações detalhadas sobre a distribuição dos dados através dos dispositivos.

Passo 5: Configurar a montagem no inicio do sistema

Para garantir que o RAID 0 é automaticamente montado ao iniciar o sistema, adiciona-o em /etc/fstab.

  1. Obtém o UUID do sistema de ficheiros BTRFS:

    sudo btrfs device scan
  2. Edita /etc/fstab:

    sudo nano /etc/fstab

    Adiciona a seguinte linha:

    UUID=<your-uuid> /mnt/btrfs-raid0 btrfs defaults 0 0

    Substitui <your-uuid> com o UUID que obtiveste do comando btrfs device scan.

  3. Testa a configuração:

    sudo mount -a

    Este comando vai tentar montar todos os sistemas de ficheiros definidos em /etc/fstab. Se não existirem erros, a configuração está correta.

    Montar disco sem reiniciar

    Dependendo do sistema operativo poderás ter de reiniciar o “systemctl daemon”

Reinicia para o Windows

Agora no Windows se tiveres a driver instalada os discos deverão ser automaticamente montados, a não ser que tenhas desativado a opção de montar automaticamente

Conclusão

Conseguiste criar um sistema de ficheiros BTRFS em RAID 0 no teu sistema Linux que pode ser partilhado com o Windows. No entanto não é algo que deva ser considerado como um bom armazenamento para ficheiros criticos, não existe redundância e o driver de BTRFS apesar de já estar bastante desenvolvido para o Windows, ainda não está completo, por isso é uma boa solução para um disco com jogos ou para guardar maiores quantidades de dados que no caso de falha possam sempre ser adquiridos.


Agora podes aproveitar os beneficios de performance do teu novo BTRFS RAID 0 (Estes podem variar). Se precisares de redundância, considera utilizar RAID 1 ou RAID 10.