Recuperação de dados de RAID5 e RAID0 a partir do Gerenciamento de Disco do Windows e do Gerenciador de Servidores (WSS)

Neste artigo examinaremos como realizar a recuperação de dados de RAID de software RAID 5 e RAID 0 criados com as ferramentas Windows Storage Spaces e Windows Disk Management no Windows Server 2012. Você aprenderá a restaurar rapidamente o acesso à informação caso o servidor falhe, uma das unidades apresente mau funcionamento ou o sistema operativo deixe de reconhecer o array RAID. Revisaremos cenários comuns de falha e demonstraremos métodos eficazes de recuperação de dados em ambientes onde os arrays são usados para tarefas críticas: armazenamento de bases de dados, serviços de servidor ou plataformas de virtualização.

Recuperação de dados de RAID5 e RAID0 a partir do Gerenciamento de Disco do Windows e do Gerenciador de Servidores (WSS)

Sistemas de armazenamento baseados em Windows Disk Management e Windows Server Manager são amplamente utilizados para criar arrays RAID de software em ambientes Windows. As configurações mais comuns continuam a ser RAID 0 e RAID 5, que fornecem, conforme o tipo de array, aumento de desempenho ou tolerância a falhas.

No entanto, mesmo configurações RAID confiáveis não garantem proteção completa contra perda de dados. As causas de problemas podem incluir falhas de unidades, corrupção de metadados do serviço RAID, erros do usuário, falhas do sistema operativo ou migração incorreta do array entre servidores. Nesses casos, o acesso à informação pode ser perdido tanto no Windows quanto após conectar os discos a outro sistema.

Deve-se prestar atenção à possibilidade de recuperar tais arrays num ambiente Ubuntu, que oferece um amplo conjunto de ferramentas para análise de discos, trabalho com RAID e recuperação de sistemas de ficheiros. Graças ao suporte a utilitários Linux e software especializado, é possível reconstruir a estrutura do RAID, obter acesso a partições perdidas e recuperar ficheiros importantes.

Este artigo descreve como recuperar dados de arrays RAID0 e RAID5 criados no Windows Disk Management e no Server Manager utilizando o Ubuntu, e ressalta características e riscos a considerar durante o procedimento de recuperação.

Vá para ver
How to recover data from BTRFS RAID 0, RAID 5 and RAID 6 created on Rockstor

How to recover data from BTRFS RAID 0, RAID 5 and RAID 6 created on Rockstor

Métodos de criação de RAID

No Windows Server 2012 existem dois mecanismos diferentes para criação de arrays de disco:

  • O primeiro é implementado através do Windows Storage Spaces no ambiente do Gerenciador do Servidor.
  • O segundo utiliza a clássica ferramenta Windows Disk Management.

Essas tecnologias desempenham tarefas semelhantes, mas operam com princípios diferentes.

Característica Storage Spaces Gerenciamento de Disco
Finalidade Sistema moderno de virtualização de armazenamento Gerenciamento clássico de discos e RAID
Disponibilidade Windows 8 / Server 2012 e posteriores Em todas as versões modernas do Windows
Tipo de tecnologia Pool de armazenamento + disco virtual Disco dinâmico
Suporte a RAID Simple, Mirror, Parity RAID 0, RAID 1, RAID 5
Escalabilidade Expansão flexível do pool Limitada
Adição de discos Possível sem reconstrução do sistema Limitada
Tolerância a falhas Mirror, Parity RAID 1, RAID 5
Suporte a thin provisioning Sim Não
Recuperação de dados Mais complexa devido aos metadados de armazenamento Mais simples
Compatibilidade com Linux Limitada Melhor reconhecido
Uso principal Servidores e grandes sistemas de armazenamento Pequenos arrays RAID

Storage Spaces é um sistema moderno de virtualização de armazenamento. Primeiro cria-se um pool de discos e adicionam-se unidades físicas a esse pool; depois cria-se discos virtuais dentro do pool com o nível de resiliência desejado: Simple, Mirror ou Parity. Essa abordagem permite gestão flexível da capacidade, a adição de novas unidades sem desligar o servidor e expansão do armazenamento sem reconstruir o array.

Windows Storage Spaces no Gerenciador do Servidor

Outra característica do Storage Spaces é o uso de metadados que são gravados em todos os discos do pool. Por isso o sistema pode determinar automaticamente a configuração de armazenamento após os discos serem reconectados a outro servidor que suporte essa tecnologia.

Em contraste, o Disk Management utiliza a tecnologia de disco dinâmico (Dynamic Disk). Para criar arrays RAID o sistema converte discos básicos para o formato Dynamic Disk. Após isso é possível criar arrays RAID de software clássicos, incluindo RAID 0, RAID 1 e RAID 5.

Disk Management: criação de um array de discos

Nesse caso a informação de configuração do array é armazenada na área de serviço de cada disco dinâmico. O array não usa um pool de discos e é criado diretamente a partir de discos físicos específicos. O gerenciamento de um RAID desse tipo é significativamente mais simples, mas a escalabilidade é limitada. Adicionar novos discos ou alterar a estrutura do array frequentemente requer reconstrução ou criação de um novo volume.

Disk Management: o sistema converte discos básicos para Dynamic Disk para criar arrays RAID

O princípio de resiliência também difere. Storage Spaces usa um modelo mais flexível de distribuição de dados que pode aplicar diferentes níveis de redundância dentro de um único pool, criando múltiplos discos virtuais com parâmetros distintos. No Disk Management cada volume tem um tipo de RAID fixo que é definido durante a criação e não pode ser alterado posteriormente.

Assim, Storage Spaces no Windows Server 2012 é uma tecnologia de gestão de armazenamento mais moderna e flexível destinada a sistemas de servidor escaláveis. O Disk Management, por sua vez, implementa o RAID de software clássico e é mais usado em configurações mais simples ou em ambientes de pequeno porte.

Sistema de ficheiros ReFS

No exemplo descrito neste artigo trabalhamos com o ReFS (Resilient File System). Este sistema de ficheiros foi desenvolvido pela Microsoft especificamente para ambientes de servidor com alta carga e é focado na máxima resiliência.

A principal característica do ReFS é a implementação de mecanismos de verificação de integridade de metadados e funções automáticas de autocura sem necessidade de paragem do sistema. A otimização para grandes volumes de dados e arrays RAID complexos tornou-o um padrão para configurações baseadas no Windows Server 2012.

É importante notar que, apesar da arquitetura proprietária da Microsoft, este artigo demonstra a possibilidade de obter acesso completo a esses dados mesmo em um ambiente Linux. Isso permite análise profissional e recuperação de arrays RAID em qualquer sistema, independentemente das limitações do ecossistema nativo do Windows.

Server Manager: configuração do sistema de ficheiros do array

Recuperação de dados

MÉTODO 1. Recuperação de um array WSS

Primeiro consideramos a recuperação de dados de um RAID 5 montado a partir de três discos no Windows Storage Spaces. Os discos usam o sistema de ficheiros ReFS, e o procedimento de recuperação será realizado num computador com Ubuntu.

Se o hardware do servidor falhar, por exemplo devido a problema na fonte de alimentação, na placa-mãe ou no controlador, a leitura direta dos discos no servidor pode tornar-se impossível. Nesses casos os discos devem ser removidos cuidadosamente do servidor e conectados a uma estação de trabalho. Isso pode ser feito diretamente via a interface SATA ou utilizando uma dock externa.

Ubuntu: discos conectados ao PC

Embora os discos utilizem o sistema de ficheiros ReFS, que é destinado ao Windows, o acesso aos dados pode ser restaurado usando o Hetman RAID Recovery. O programa analisa os metadados do Storage Spaces, determina os parâmetros do array e reconstrói automaticamente a sua estrutura. Após isso, torna-se possível navegar pela árvore de diretórios e extrair os ficheiros necessários, mesmo que o Linux não suporte o montagem direta desse sistema de ficheiros.

Recuperação de dados de matrizes RAID corrompidas inacessíveis para um computador.

MÉTODO 2. Usando uma imagem de disco

Se a arquitetura da sua estação de trabalho não permitir conectar todos os discos simultaneamente, a solução ideal é usar imagens virtuais das unidades. Este método envolve criar cópias exatas bit a bit de cada disco para análise posterior.

Depois de montar a imagem da unidade em falta diretamente na interface do Hetman RAID Recovery, o programa a trata como um dispositivo físico completo. Trabalhando em combinação com os outros discos disponíveis, a utilidade reconstrói automaticamente a estrutura do array. Essa abordagem permite iniciar o processo de recuperação mesmo quando as portas de conexão são limitadas, garantindo segurança e integridade dos dados em cada etapa.

Hetman RAID Recovery: criação de imagem de disco

MÉTODO 3. Recuperação automática de RAID 5

Imediatamente após o arranque, o Hetman RAID Recovery inicia uma análise automática dos discos conectados. O programa analisa as informações de serviço e tenta reconstruir a configuração RAID original com base nelas. Na janela principal verá uma lista de todos os discos físicos detectados, bem como os arrays virtuais já montados e prontos para trabalho subsequente.

Hetman RAID Recovery: RAID 5 detectado

Selecione o RAID 5 detectado e execute o modo de Análise rápida.

Hetman RAID Recovery: executar modo de Análise Rápida

Após a conclusão da análise, a janela principal do programa exibirá a estrutura completa do array RAID reconstruído com todos os ficheiros e pastas. Marque os ficheiros e pastas desejados e clique no botão Recuperar.

Hetman RAID Recovery: marque ficheiros e pastas e clique em Recuperar

Na etapa seguinte, especifique o destino para os dados recuperados e confirme a ação clicando em Recuperar.

Hetman RAID Recovery: especifique o local para salvar os dados recuperados

Após concluir todos os passos de recuperação, os dados do array RAID estarão novamente disponíveis para uso posterior.

Dados recuperados do array RAID disponíveis novamente para uso

MÉTODO 4. Recuperação automática de RAID 0

No segundo exemplo consideramos a recuperação de dados de um RAID 0 que foi criado a partir de duas unidades no Windows Storage Spaces. O array utiliza o sistema de ficheiros ReFS.

Particularidade do RAID 0 é que os dados são distribuídos por todas as unidades do array sem redundância. Portanto, para recuperar dados é necessário conectar todas as unidades simultaneamente e trabalhar com o array como uma única estrutura. Unidades individuais de um array desse tipo não contêm ficheiros completos, de modo que um programa não pode lê-las independentemente.

Antes de iniciar, certifique-se de que todas as unidades que faziam parte do RAID 0 estão fisicamente conectadas ao computador. Isso pode ser feito via interface SATA diretamente à placa-mãe ou utilizando uma dock externa.

Certifique-se de que todas as unidades que faziam parte do RAID estão fisicamente conectadas ao computador

Como no caso anterior, a recuperação será realizada num computador com Ubuntu, usando o Hetman RAID Recovery, que determinará os parâmetros do array e reconstruirá a sua estrutura para posterior acesso aos ficheiros.

Recuperação de dados de matrizes RAID corrompidas inacessíveis para um computador.

Execute o Hetman RAID Recovery. O programa analisará instantaneamente o hardware conectado e reconstruirá automaticamente a estrutura lógica do seu array. Na janela principal verá tanto os dispositivos físicos individuais como o RAID 0 reconstruído e pronto para recuperação.

Hetman RAID Recovery reconstrói automaticamente a estrutura lógica do array

Proceda ao item Análise rápida e inicie a análise.

Hetman RAID Recovery: selecione Análise Rápida e inicie a análise

Após a conclusão da varredura, o programa exibirá a estrutura recuperada de partições, pastas e ficheiros. Usando a janela de visualização pode verificar o conteúdo e confirmar que os dados necessários são legíveis.

Hetman RAID Recovery: estrutura recuperada das partições, pastas e ficheiros do array

Em seguida, marque as pastas necessárias ou ficheiros individuais e clique no botão Recuperar.

Hetman RAID Recovery: marque as pastas necessárias ou ficheiros individuais

Para salvar os resultados, especifique outro disco ou armazenamento externo. É importante não gravar os ficheiros recuperados de volta no mesmo meio a partir do qual a recuperação está a ser realizada, para evitar sobrescrever dados.

MÉTODO 5. Recuperação de um array Disk Management

Mesmo com configuração RAID correta, os arrays podem perder acesso aos dados devido a falhas de hardware ou erros de software.

Nessas situações é importante agir com máxima cautela: não grave novos dados nos discos do array porque isso pode sobrescrever fragmentos de informação perdida e complicar a recuperação.

Ubuntu: discos do array conectados ao PC

Abaixo consideramos um dos cenários mais comuns de perda de acesso a um array RAID. Essa situação pode ocorrer como resultado de uma falha do sistema operativo em que a configuração do array deixa de ser reconhecida corretamente pelo sistema. Também pode ser causada por mau funcionamento de hardware do servidor, após o qual o sistema deixa de detectar todas as unidades que pertencem ao array. Em alguns casos o problema é causado por uma atualização de firmware mal-sucedida do controlador ou de outros componentes do sistema. Como resultado, o array RAID torna-se inacessível mesmo que as unidades permaneçam fisicamente íntegras.

Antes de iniciar o trabalho feche todas as aplicações que possam usar esses discos e desative temporariamente backups automáticos.

Se o array não for montado pelo sistema, não inicialize ou formate os discos nem crie novas partições; é preferível deixá-los no estado em que o sistema os detecta e proceder diretamente ao procedimento de recuperação.

MÉTODO 6. Recuperação automática de RAID 5

Para demonstração usaremos um RAID 5 criado com a ferramenta Windows Disk Management no Windows Server 2012. O array consiste de quatro discos usando o sistema de ficheiros ReFS. Neste exemplo mostraremos como restaurar o acesso aos dados em caso de falha do sistema ou corrupção da configuração RAID.

Para recuperação também pode ser utilizado o Hetman RAID Recovery.

Recuperação de dados de matrizes RAID corrompidas inacessíveis para um computador.

Selecione o nosso RAID 5 e execute a Análise rápida.

Hetman RAID Recovery: arrays detectados automaticamente

O programa detectará automaticamente o sistema de ficheiros ReFS, portanto normalmente não é necessária configuração adicional.

Hetman RAID Recovery: análise do array detectado automaticamente

Após selecionar o modo clique em Avançar para iniciar o processo de verificação. Note que uma análise completa pode levar um tempo considerável, especialmente se o array tiver grande capacidade.

Depois de concluída a verificação, a janela principal do programa exibirá as partições, diretórios e ficheiros detectados que estavam anteriormente armazenados no array e que podem ser recuperados.

Se necessário, pode usar a função de Visualização para ver o conteúdo dos ficheiros e verificar a sua integridade.

Hetman RAID Recovery: pré-visualização do conteúdo recuperável dos ficheiros

Em seguida, marque os diretórios ou ficheiros individuais necessários e inicie o processo de recuperação pressionando o botão Recuperar.

Na janela seguinte, especifique o caminho para salvar os dados recuperados em outro dispositivo de armazenamento e confirme a ação clicando novamente em Recuperar.

Hetman RAID Recovery: caminho para salvar dados recuperados

Após a conclusão do procedimento o programa notificará sobre a recuperação bem-sucedida dos dados do seu array RAID.

Hetman RAID Recovery: o programa informará a recuperação bem-sucedida dos dados

MÉTODO 7. Recuperação no RAID Constructor

No exemplo seguinte consideramos um cenário mais complexo quando uma das quatro unidades de um RAID 5 falhou ou quando o array foi acidentalmente formatado pelo utilizador.

Nesse caso o programa pode não detectar automaticamente a estrutura do array, por isso recomenda-se utilizar o RAID Constructor no modo manual para reconstruir a configuração.

Hetman RAID Recovery: RAID Constructor em modo manual

Após remover as unidades do servidor é essencial registar a sua ordem original no array antes de realizar quaisquer ações de recuperação.

Cada unidade em um RAID 5 tem uma posição definida na sequência de cálculo de dados e paridade, portanto alterar a ordem das unidades pode resultar em montagem incorreta do array, corrupção do sistema de ficheiros e complicar significativamente a recuperação.

É importante considerar que o RAID 5 permite recuperação de dados mesmo que uma unidade esteja em falta, pois a informação pode ser reconstruída usando blocos de paridade.

Nesta configuração o início físico de uma unidade não coincide com o início real do sistema de ficheiros. Devido a corrupção parcial ou eliminação dos dados de serviço, o programa perde os pontos de referência necessários para deteção automática do offset.

Como resultado, o algoritmo não consegue determinar com precisão o setor zero da partição lógica. Nesta situação, o valor do offset deve ser especificado manualmente durante a reconstrução do array. Se isso não for feito, o sistema de ficheiros pode ser exibido incorretamente ou permanecer indisponível para análise e recuperação.

Um Offset configurado incorretamente também pode levar a exibição incorreta da estrutura de diretórios ou a ficheiros em falta.

Para determinar o valor exato do offset utilize o Editor HEX incorporado.

Se a ordem das unidades no array RAID for desconhecida, a busca pela assinatura e o cálculo do Offset devem ser realizados individualmente para cada disco do array. Essa abordagem permitirá estabelecer o offset correto para cada dispositivo e garantir a reconstrução adequada de toda a configuração.

O sistema de ficheiros ReFS tem uma assinatura única localizada no início das suas estruturas de serviço. Contudo, em algumas estruturas ReFS a assinatura pode não começar estritamente no bloco zero, mas com um pequeno offset dentro da estrutura de metadados. Em representação hexadecimal aparece como a sequência de bytes 00 00 00 52 65 46 53 00, que no campo de texto do editor corresponde à string ReFS.

Para ativar a ferramenta selecione o disco desejado e use a combinação de teclas Ctrl + H ou o item correspondente no menu de contexto.

Hetman RAID Recovery: editor HEX integrado

Na janela do Editor HEX execute a função de pesquisa Localizar texto ou valor e insira a sequência hexadecimal 00 00 00 52 65 46 53 00 no campo apropriado.

Hetman RAID Recovery: Procurar valor HEX

Certifique-se de alterar o modo de busca para Pesquisar por valor HEX. Para maior precisão e análise mais rápida também se recomenda selecionar a opção Início do setor, já que a assinatura do sistema de ficheiros ReFS está localizada no início de um setor.

Depois que o editor encontrar o marcador correspondente, posicione o cursor na posição encontrada ou consulte o endereço do bloco atual na interface do programa. Isso permitirá determinar o valor exato do Offset a ser usado durante a reconstrução subsequente do RAID.

Hetman RAID Recovery: determinação do valor exato do offset

Para aumentar a fiabilidade do resultado também é apropriado garantir que a assinatura encontrada corresponde de facto ao início das estruturas de serviço do sistema de ficheiros e não a uma sequência de bytes casual dentro dos dados.

Após localizar o valor do Offset, abra a ferramenta RAID Constructor e selecione o Modo Manual.

Hetman RAID Recovery: abrir a ferramenta RAID Constructor

Ao criar manualmente o array é necessário especificar os parâmetros primários que foram usados durante a sua formação: tipo de RAID, ordem de colocação de blocos, tamanho de bloco e bytes por setor.

Para RAID 5 os seguintes valores são tipicamente usados nas configurações mais comuns:

  • Ordem de blocos – Left synchronous,
  • Tamanho de bloco – 64 KB,
  • Bytes por setor – 512 bytes.
Hetman RAID Recovery: parâmetros principais para criação do array

Na janela do construtor, no campo Discos disponíveis selecione as unidades que pertencem ao seu array RAID e mova-as para o campo Discos selecionados.

Hetman RAID Recovery: no campo Discos disponíveis, selecione as unidades

Se uma das unidades estiver fisicamente ausente ou com falha, utilize a função Adicionar disco vazio que permite integrar um disco virtual vazio na estrutura do array para simular o componente em falta, preservando a integridade da arquitetura RAID 5 e possibilitando a recuperação de dados.

Hetman RAID Recovery: Adicionar disco vazio

Para aplicar os parâmetros de offset calculados dê um duplo clique no disco desejado ou use o ícone Alterar offset/tamanho do disco. Na caixa de diálogo que abrir insira o valor de offset obtido – 264192 – no campo Offset.

Hetman RAID Recovery: Alterar offset/tamanho do disco

Antes de confirmar, altere as unidades de Bytes para Setores – isso evitará erros de cálculo, pois o programa converterá automaticamente o número especificado de sectores para bytes.

Após clicar em OK repita este procedimento para cada disco que faça parte do seu array RAID. Essa configuração precisa de cada componente é crítica para a sincronização dos blocos e a correta reconstrução da estrutura lógica do sistema de ficheiros ReFS.

Se a ordem exata dos discos for desconhecida, ela pode ser determinada manualmente por tentativa sequencial. Altere as posições dos discos na lista de Discos selecionados movendo-os para cima ou para baixo com as setas e, após cada alteração, verifique se uma configuração de volume lógico correta é exibida na parte inferior da janela. Essa abordagem permite controlar visualmente o processo de reconstrução do array em tempo real e avaliar rapidamente a correção da ordem escolhida.

Hetman RAID Recovery: definir ordem dos discos

Além disso, pode usar a função Detectar automaticamente a ordem dos discos, que executa uma enumeração automática de todas as disposições possíveis das unidades no array RAID. Embora este procedimento possa demorar mais tempo dependendo do número de discos na configuração, reduz significativamente a probabilidade de erro e ajuda a determinar a ordem correta em estruturas de armazenamento complexas.

Hetman RAID Recovery: Detectar automaticamente a ordem dos discos

Após fazer alterações clique no botão Adicionar para acrescentar o array RAID reconstruído à tela principal do programa para verificação e recuperação de ficheiros.

Hetman RAID Recovery: clique em Adicionar para acrescentar o array RAID restaurado

Depois que o array RAID estiver corretamente reconstruído no RAID Constructor, é realizada a varredura e os resultados da análise aparecem na tela principal do programa; pressione o botão Recuperar.

Hetman RAID Recovery: array RAID corretamente reconstruído no RAID Constructor

Na janela que abrir clique em Avançar, selecione a opção Salvar em disco rígido e especifique a pasta para gravação. Após a conclusão do processo será possível recuperar os dados necessários salvando-os em outro disco.

Conclusão

A recuperação de dados de arrays RAID 0 e RAID 5 criados com o Windows Disk Management ou com o Windows Server Manager num ambiente Ubuntu é inteiramente possível mesmo após falhas graves ou perda de acesso ao array. Graças às ferramentas Linux e ao software especializado, é possível reconstruir a estrutura RAID, analisar a configuração dos discos e restaurar ficheiros importantes.

Ao mesmo tempo, deve-se ter em conta que o RAID0 não tem redundância, portanto a danificação de mesmo uma única unidade pode levar a perda crítica de dados. O RAID5 oferece maior proteção; contudo, erros de reconstrução, falhas do controlador ou corrupção dos dados de serviço também podem tornar o sistema inacessível.

Para uma recuperação bem-sucedida é importante não gravar nos discos problemáticos, determinar corretamente os parâmetros do array e usar métodos de análise seguros. Os melhores resultados são obtidos criando imagens das unidades e trabalhando com cópias dos dados.

Assim, o Ubuntu pode ser uma plataforma eficaz para recuperar arrays RAID do Windows, especialmente em casos onde as ferramentas nativas do sistema operativo já não permitem acesso aos dados.

Raidel Becerra

Autor: , Escritor técnico

Raidel Arbelay Becerra é um escritor técnico para a Hetman Software e a voz e rosto do Hetman Software: Canal YouTube de recuperação de dados. Escreve artigos aprofundados, tutoriais e resenhas sobre como funciona o software da empresa com todos os tipos de dispositivos de armazenamento.

Mykhailo Miroshnichenko

Editor: , Escritor técnico

Mykhailo Miroshnychenko é um dos principais programadores da Hetman Software. Com base em quinze anos de experiência em desenvolvimento de software, partilha os seus conhecimentos com os leitores do nosso blogue. Para além da programação, Mikhail é um especialista em recuperação de dados, sistemas de ficheiros, dispositivos de armazenamento e matrizes RAID.

Recomendado para você