Crie Cópias de Segurança no Linux com BtrFS: Guia Completo

Foto do autor

By luis

Precisa de criar cópias de segurança dos seus dados no seu PC Linux, caso algo seja apagado acidentalmente? Com o sistema de arquivos BtrFS, isso é perfeitamente possível. Antes de tudo, necessita de um dispositivo de bloco no Linux a utilizar o sistema de arquivos BtrFS. Se pretende converter uma unidade existente para BtrFS, para dados variados, siga as instruções fornecidas. Quer usar o BtrFS como o seu sistema de arquivos raiz? Nesse caso, certifique-se de selecionar “instalação personalizada” durante o processo de instalação e escolha o BtrFS como o seu sistema de arquivos preferencial.

Além de ter um dispositivo de bloco formatado com o sistema de arquivos BtrFS, o utilizador deve também instalar o pacote btrfs-progs.

Nota: Poderá ser necessário executar o comando lsblk para determinar qual o dispositivo de bloco que deve ser formatado.

BtrFS no Linux

Para formatar uma unidade, comece por fazer uma cópia de segurança de todos os dados existentes e, em seguida, abra um terminal. No terminal, obtenha acesso root usando: sudo -s. Com acesso root, utilize o comando mkfs para criar um novo sistema de arquivos no dispositivo. Neste exemplo, usaremos /dev/sdd1

mkfs.btrfs -f /dev/sdd1

Resolução de Problemas

A unidade não está a funcionar após a formatação para BtrFS? Pode ser necessário criar uma nova tabela de partição. Veja como fazê-lo:

parted /dev/sdd
mklabel gpt
mkpart primary btrfs 1MiB 100%

Saia da ferramenta parted com:

quit

Em seguida, execute o comando de formatação novamente.

mkfs.btrfs -f /dev/sdd1

Criar Cópias de Segurança com BtrFS

Antes de criar as cópias de segurança, é necessário criar alguns subvolumes. O sistema de arquivos principal do seu Linux é BtrFS? Nesse caso, ignore esta etapa e avance diretamente para a configuração de subvolumes. Siga esta parte do processo apenas se estiver a usar uma unidade secundária com o sistema de arquivos BtrFS, e terá que montá-la. Neste exemplo, o disco rígido será /dev/sdd.

sudo -s
mkdir /btrfs
mount -t btrfs /dev/sdd1 /btrfs

A pasta principal do BtrFS foi criada, montada e está pronta para ser usada. Agora é altura de criar um subvolume. O que é um subvolume? É uma funcionalidade especial do sistema de arquivos BtrFS que permite que os volumes criados funcionem de forma semelhante a um dispositivo de bloco (imagine /dev/sda1 e afins).

Na verdade, não são dispositivos de bloco. São, sim, diretórios sofisticados que aproveitam uma tecnologia chamada “espaços de nomes”. Sem entrar em muitos detalhes técnicos, o BtrFS utiliza esta tecnologia de espaços de nomes para permitir aos utilizadores criar vários subvolumes individuais e montáveis, que atuam e se comportam como dispositivos de bloco.

Para criar o seu próprio subvolume, siga estas etapas. Neste exemplo, mostraremos uma estrutura básica de subvolume que começa na pasta principal /btrfs. Lembre-se de que pode criar os seus próprios volumes onde quiser, desde que seja dentro de um sistema de arquivos BtrFS.

Primeiro, obtenha um shell de raiz. Estes comandos podem ser executados com privilégios sudo, mas como interagir com o sistema de arquivos (como root) pode ser um pouco complicado, é melhor obter o root diretamente. Use sudo -s ou faça login como root usando su. Em seguida, execute:

btrfs subvolume create /btrfs/vol_a

O primeiro comando cria um subvolume BtrFS em /mnt/btrfs na nossa unidade de exemplo /dev/sdd1. Se quiser, pode parar aqui e usar isso como um volume para guardar todos os dados importantes. Em alternativa, pode criar sub-subvolumes (quantos quiser). Para criar um volume dentro de um volume, faria:

btrfs subvolume create /btrfs/vol_a/vol_b

Para criar uma cópia de segurança, comece por mover/copiar todos os dados importantes para um subvolume. Por exemplo:

cp -R ~/Documents /btrfs/vol_a/

Depois, utilize o sistema de arquivos para criar uma cópia de segurança.

btrfs subvolume snapshot /btrfs/vol_a/ /btrfs/vol_a/backup_1

Nota: substitua “backup_1” pelo nome que deseja dar à sua cópia de segurança. Rotule-as de forma clara para que as possa organizar mais tarde.

Restaure qualquer cópia de segurança com: mv /btrfs/vol_a/ /mnt/btrfs/vol_a/backup_1

Montar Subvolumes como Dispositivos de Bloco

Uma das grandes vantagens dos subvolumes é a capacidade de os montar individualmente, como dispositivos independentes. Para o fazer, comece por listar todos os volumes conhecidos usando o comando btrfs.

btrfs subvolume list /btrfs

Percorra a lista e encontre o número de ID do subvolume e, em seguida, monte-o com o comando mount. Depois, desmonte-o assim que tiver o ID.

mount -o subvolid=XXX /dev/sdX /btrfs

Substitua XXX pelo ID e /dev/sdX pela unidade onde se encontra o volume a montar. Tenha em mente que não pode montar um subvolume na mesma partição que a partição de nível superior. Em vez disso, monte noutra partição ou unidade formatada em BtrFS. Por exemplo:

mount -o subvolid=38 /dev/sdc1 /btrfs

O Subvol 38 está localizado em /dev/sdd1, mas /dev/sdc1 também é BtrFS, portanto, as cópias de segurança podem ser montadas aí. Isso não precisa de ser feito em unidades individuais. Em vez disso, pode montá-lo em /dev/sdc2 e afins.

Definir o Subvolume Padrão

Definir o subvolume padrão do BtrFS é útil, pois facilita a interação com o mesmo. Para definir um padrão, comece por usar o comando de lista de subvolume para localizar o ID. Pegue no ID e adicione-o ao comando set-default:

btrfs subvolume set-default XXX /btrfs

Para eliminar um padrão que definiu, use o mesmo comando, mas em vez de usar um ID de volume da lista de subvolumes, use o número 0. Isso irá repor as configurações de fábrica e poderá usar outros subvolumes como padrões.

btrfs subvolume set-default 0 /btrfs

Eliminar um Subvolume

Se em algum momento quiser eliminar um volume, pode fazê-lo usando o BtrFS. Por favor, não elimine o subvolume manualmente do disco rígido, com comandos como “rmdir” ou “rm -rf”. É preferível usar as ferramentas do sistema de arquivos BtrFS.

Para eliminar um volume, execute:

btrfs subvolume delete /btrfs/nome-do-volume