Como recuperar dados de um disco BtrFS ou de uma matriz RAID
No nosso artigo, aprenderá como recuperar dados de uma btrfs Raid no Linux. Como criar um, substituir um disco defeituoso e recuperar dados perdidos de um array corrompido.
- BTRFS filesystem
- Criar um ponto de montagem
- Cómo crear RAID5
- Como montar uma drive RAID
- Como substituir ou acrescentar uma unidade
- Como reparar um volume danificado
- Recuperação de dados com btrfs RAID5
- Características do sistema de ficheiros btrfs
- Conclusão
- Perguntas e respostas
- Comentários
Frequentemente para a criação de uma matriz RAID no sistema operativo Linux mdadm e lvm são utilizados, pode aprender mais sobre estes sistemas num dos nossos tutoriais em vídeo.
Além destas ferramentas explicadas no vídeo, o sistema de ficheiros Btrfs tem suporte integrado para RAID. Isto tem as suas próprias ferramentas para a construção e manipulação de matrizes de discos, por isso vamos ver mais de perto o que este sistema pode fazer.
BTRFS filesystem
Btrfs – é um novo sistema de ficheiros com Copy-on-Write suporte com suporte RAID incorporado. A essência desta grande característica é não sobrescrever dados antigos ao copiar. Esta é uma grande vantagem e torna muito mais fácil recuperar ficheiros apagados após falhas. Uma vez que qualquer falha ou erro durante o processo de cópia não afectará o estado anterior dos ficheiros.
Característica | Descrição |
---|---|
Tipo de sistema de arquivos | Copy-on-Write (COW) |
Suporte a snapshots | Capacidade de criar snapshots para recuperação rápida de dados |
Suporte a RAID | Suporte integrado para configurações RAID (RAID 0, 1, 5, 6, 10) |
Compressão de dados | Suporta compressão de dados transparente para economia de espaço |
Integridade dos dados | Verificação da integridade dos dados por meio de hashing e recuperação automática |
Desfragmentação | Desfragmentação automática e manual de dados |
Expansibilidade | Expansão dinâmica do tamanho do sistema de arquivos sem desmontar |
Clonagem de arquivos | Capacidade de clonar arquivos rapidamente sem duplicar dados |
O sistema de arquivo armazena metadados separadamente dos dados do sistema de arquivo, e pode usar diferentes camadas de RAID para esta informação simultaneamente, esta é a sua principal vantagem. Além disso, o objectivo deste sistema é proporcionar uma melhor gestão de armazenamento e uma maior segurança para a integridade dos dados Linux.
Antes de começarmos a utilizar btrfs, teremos de instalar as ferramentas de gestão SA necessárias, executando o seguinte comando:
sudo apt install btrfs-tools
Criar um ponto de montagem
E antes de construir RAID tem de criar o directório de pontos de montagem.
Criar um directório:
Sudo mkdir -v /data
Onde "data" - эis o seu nome.
Ahora vamos a empezar a crear el array.
Cómo crear RAID5
Al crear un array no es necesario particionar la unidad, el sistema de archivos no lo requiere. Puedes combinar las unidades en un array como un todo o como particiones separadas, incluso fusionar unidades con particiones existentes. En mi ejemplo mostraré cómo crear RAID 5 de cinco discos.
Para evitar tener que teclear tu contraseña de root todos los comandos se ejecutarán como administrador.
Para construir una matriz, escriba el siguiente comando en el terminal:
sudo mkfs.btrfs -L data -m raid5 -d raid5 -f /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf
Donde:
l - es una etiqueta o nombre del sistema de archivos
Parámetro:
d - establecemos el tipo RAID5 para los datos.
m - establecemos el tip RAID5 para metadatos.
f - usado para forçar a criação de btrfs mesmo que algumas das unidades estejam formatadas num sistema de ficheiros diferente.
Agora, pode ser montado utilizando qualquer uma das unidades que estão incluídas.
Como montar uma drive RAID
Utilizei 5 drives para criar RAID: sdb, sdc, sdd, sde e sdf. Assim, posso montar os dados do sistema de ficheiros no directório data com a ajuda do disco sdb. Abrimos a gestão do disco e montamos a nossa unidade que estará disponível depois de tudo isso.
Alternativamente, pode montar a unidade no terminal.
sudo mount /dev/sdb1 /data
Para verificar isto, introduzir sudo df -h.
sudo df -h
Como pode ver, a nossa matriz é montada num directório /dados.
E para ver a informação sobre o espaço ocupado e livre da matriz, entre:
sudo btrfs filesystem usage /data
E para desmontar uma matriz, basta entrar:
sudo umount /data
Como substituir ou acrescentar uma unidade
Para substituir uma unidade, digite btrfs substituir no terminal. É executado de forma assíncrona, ou seja, é executado gradualmente:
- start - para arrancar,
- cancel - para parar,
- status - para ver o estado.
A primeira coisa a fazer é determinar o número da unidade danificada:
sudo btrfs filesystem show
Então deve ser trocado por um novo:
btrfs replace start <dispositivo a remover ou o seu ID> < dispositivo a adicionar> <o caminho onde o dispositivo é montado btrfs>
No meu caso, inserimos:
btrfs replace start 3 /dev/sdg
where: 3 - é o número da unidade em falta, e sdg é o código da nova unidade.
Como reparar um volume danificado
Para restaurar uma matriz Btrfs, devemos usar a opção de montagem integrada - recovery.
sudo mount -o recovery /dev/sdb /mnt
Então iniciamos o processo de recuperação.
Recuperação de dados com btrfs RAID5
Even o sistema mais robusto e tolerante a falhas pode falhar. Falha do sistema, falha da unidade, falha de hardware, corrupção de metadados, eliminação acidental e máconfiguração podem resultar em RAID falha e perda de dados importantes. Se encontrar isto, utilize Hetman RAID Recovery. É capaz de recuperar qualquer informação de matrizes ou suportes não funcionais que fizessem parte da matriz. A utilidade reconstruirá o destruído RAID lendo passo a passo toda a informação conhecida, depois é possível copiar todos os dados encontrados.
Conectar a unidade a um PC com Windows instalado, utilizar uma máquina virtual ou instalá-la como um segundo sistema.
O programa fará automaticamente o scan do espaço do disco, e exibirá o máximo de informação possível sobre a matriz.
Como pode ver, no nosso caso com btrfs RAID, o programa não monta as unidades numa matriz, isto deve-se à natureza da sua construção, e toda a informação é armazenada de acordo com o tipo RAID.
Para iniciar o processo de recuperação, abra o gestor do disco, clique com o botão direito do rato em qualquer dos discos que compõem a matriz, e execute "Pesquisa rápida".
Ao digitalizar qualquer um dos discos, o resultado será idêntico pois todos eles fazem parte do mesmo conjunto.
Após a verificação estar completa, o programa exibirá os ficheiros encontrados, com uma pré-visualização dos ficheiros, o que torna mais fácil encontrar as imagens ou vídeos que procura.
Seleccionar os ficheiros que deseja restaurar e clicar "Restaurar", especificar o caminho para os guardar e clicar "Restaurar" novamente. Quando terminado, todos os ficheiros serão colocados na pasta especificada.
Se a verificação rápida não encontrar os ficheiros de que precisamos, execute a "Verificação completa". Este tipo de scan demorará mais tempo, mas encontrará toda a informação deixada no disco, mesmo a informação que foi apagada do disco há muito tempo.
Como este é o quinto RAID todos os dados permanecem intactos na ausência de uma unidade, mas se duas unidades falharem, alguns dados serão corrompidos.
Características do sistema de ficheiros btrfs
Btrfs suporta compressão de dados. Ou seja, toda a informação disponível sobre os meios de comunicação será automaticamente comprimida. E quando os dados são acedidos, cada ficheiro específico é automaticamente descomprimido.
Esta característica poupa muito espaço de armazenamento, bem como tempo de procura de software de compressão de dados de terceiros. O sistema de ficheiros suporta 3 métodos principais de compressão de ficheiros - estes são zlib, lzo e zstd. A sua principal diferença é o grau, bem como a taxa de compressão.
O nosso programa permite-lhe recuperar ficheiros comprimidos por qualquer um destes três métodos. Na interface do programa, os volumes e ficheiros comprimidos são mostrados da seguinte forma, como se pode ver, são destacados numa cor diferente.
Uma outra grande vantagem é a criação de subvolumes. Simplificando, 3 discos diferentes (subvolumes) podem ser criados numa só unidade. Estes subvolumes são capazes de se auto-expandir para o espaço livre de outro volume. Esta função permite expandir uma unidade à custa de outra sem comprimir e transferir dados, se necessário. Estes subvolumes são mostrados no programa como se segue, são os discos dentro da unidade primária.
Pastas com snap-shots são exibidas da mesma forma.
Para criar subvolumes, use o comando:
btrfs subvolume create /mnt/btrfs/my-subvolume
E para ver uma lista de subvolumes nesta unidade, execute:
btrfs subvolume list /mnt/btrfs
Para montar um subvolume:
mount -o subvol=my-subvolume /dev/sdd2 /mnt/btrfs2
onde sdb1 - é o código do disco.
Conclusão
Existe um pequeno número de ferramentas de recuperação de dados que podem ler btrfs RAID. Ao escolher um, deve estar ciente de que os dados podem ser perdidos no processo, por isso certifique-se de que tem a opção de criar uma imagem da matriz e digitalizar a partir da imagem. Ainda assim, a melhor solução para se proteger da perda de dados importantes é fazer backups regulares.