Recuperar RAID Linux — chamado MD-RAID pelo kernel — é diferente de recuperar RAID de controladora dedicada. Por isso, o software RAID do Linux tem comportamentos específicos que determinam o protocolo correto. Contudo, erros comuns no uso do mdadm durante a recuperação podem destruir dados que ainda estavam íntegros.
A Crowdertech recupera RAID Linux de qualquer configuração com diagnóstico gratuito: (11) 99630-0675 · (11) 4863-3636.
O que é o MD-RAID e por que recuperar RAID Linux é diferente
Recuperar RAID Linux significa lidar com software RAID implementado pelo kernel — não por controladora física. Por isso, cada disco do array tem um superbloco MD que contém metadados do array: UUID, nível, número de discos, posição do disco no array e timestamp da última sincronização. Contudo, quando o superbloco fica corrompido ou desatualizado, o kernel não consegue montar o array automaticamente.
Além disso, o MD-RAID usa timestamps para decidir qual disco tem os dados mais recentes. Por isso, discos com timestamps inconsistentes são rejeitados automaticamente — mesmo que contenham dados válidos. Esse comportamento protege a integridade em operação normal, mas complica a recuperação quando os timestamps estão incorretos após falha de energia ou substituição incorreta de disco.
Diagnóstico de MD-RAID parado
Para recuperar RAID Linux corretamente, comece com diagnóstico sem modificar nada. Por isso, use mdadm --examine em cada disco individualmente antes de qualquer tentativa de montagem:
mdadm --examine /dev/sda
mdadm --examine /dev/sdb
mdadm --examine /dev/sdc
mdadm --examine /dev/sdd
Além disso, compare os campos Array UUID, Events e Update Time entre os discos. Contudo, discrepâncias no campo Events indicam que algum disco ficou fora de sincronia — e o disco com o menor número de eventos pode ter dados mais antigos. Por isso, nunca force a montagem com --assume-clean sem entender o estado de cada disco.
Identificar discos falhados no MD-RAID
Para recuperar RAID Linux degradado, o cat /proc/mdstat revela o estado atual sem modificar nada. Por isso, execute antes de qualquer outra ação:
cat /proc/mdstat
mdadm --detail /dev/md0
Além disso, o campo State indica se o array está clean, degraded, recovering ou inactive. Contudo, array inactive com todos os discos presentes geralmente indica superbloco inconsistente — não falha de hardware. Por isso, esse é um dos cenários com maior taxa de recuperação.
Cenários comuns para recuperar RAID Linux
MD-RAID degradado com disco falhado
Recuperar RAID Linux degradado com um disco marcado como faulty segue protocolo similar ao RAID de hardware. Por isso, identifique o disco falhado, verifique S.M.A.R.T. dos demais e substitua apenas após confirmação. Além disso, nunca remova o disco falhado antes de ter o substituto pronto — o array degradado ainda funciona com os discos restantes. Para recuperação de RAID 5 com disco falhado, o mesmo protocolo se aplica ao MD-RAID.
MD-RAID parado após reboot sem UUID
Recuperar RAID Linux que some após reboot geralmente indica que os nomes de dispositivos mudaram. Por isso, /dev/sda em um boot pode ser /dev/sdb em outro quando a ordem de detecção muda. Além disso, o uso de UUIDs ou labels no /etc/fstab e no /etc/mdadm/mdadm.conf previne esse problema. Contudo, quando o array já está parado, mdadm --assemble --scan tenta montar usando os superblocos presentes nos discos — sem depender de nomes fixos.
MD-RAID com superbloco corrompido
Recuperar RAID Linux com superbloco corrompido em um ou mais discos exige análise forense antes de qualquer --assemble. Por isso, a Crowdertech clona cada disco individualmente antes de tentar qualquer reconstituição do array. Além disso, mdadm --zero-superblock apaga o superbloco de um disco — e esse comando executado no disco errado pode destruir o array permanentemente. Contudo, é exatamente esse comando que muitos tutoriais online recomendam sem o contexto correto.
O que nunca fazer ao recuperar RAID Linux com mdadm
Para recuperar RAID Linux com segurança, evite estes erros que a Crowdertech identifica com frequência nos casos que recebe.
Não execute mdadm --add sem diagnóstico completo. Adicionar um disco com UUID diferente ao array força resync completo, que pode sobrescrever dados dos outros discos. Por isso, confirme sempre o UUID do disco antes de qualquer operação de adição.
Não use --force ou --assume-clean sem entender o estado. Essas flags forçam a montagem ignorando inconsistências — e podem expor dados desatualizados de um disco mais antigo como se fossem os dados atuais.
Não reconstrua o array no Linux de produção. Para recuperar RAID Linux de forma segura, a Crowdertech monta o array em ambiente forense isolado. Por isso, qualquer modificação em sistema de produção com dados críticos aumenta o risco de perda permanente.
Perguntas frequentes sobre recuperar RAID Linux
MD-RAID desapareceu após atualização do kernel — o que aconteceu?
O RAID Linux sumiu depois de atualizar o kernel. Os dados ainda estão lá? Sim, na maioria dos casos. Por isso, atualizações de kernel podem alterar a ordem de detecção de dispositivos ou modificar parâmetros do MD-RAID que impedem a montagem automática. Contudo, os dados físicos nos discos não são afetados pela atualização. Além disso, mdadm --examine em cada disco confirma se os superblocos ainda estão íntegros.
Posso usar mdadm para recuperar dados sem recompor o array?
É possível recuperar RAID Linux extraindo dados do MD-RAID sem montar o array completo? Em alguns casos, sim. Por isso, arrays RAID 1 têm cópia idêntica em cada disco — e um único disco pode ser montado diretamente como ext4 ou xfs sem reconstituir o array. Contudo, RAID 5 e RAID 6 exigem reconstituição do array para acesso completo aos dados. Além disso, a Crowdertech acessa o array em ambiente controlado — não no sistema original — para preservar o estado original dos discos.
A Crowdertech recupera RAID Linux MD-RAID de qualquer configuração com diagnóstico gratuito — (11) 99630-0675 · (11) 4863-3636.
Fontes: Kernel.org — MD RAID Documentation · mdadm manpage · CERT.br.