Eu tenho uma instalação do software RAID5 existente de 4 discos.
sda, sdb, sdc, sdd
Como tudo estava funcionando, eu queria testar o array. Para fazer isso eu puxei o plug em um dos discos (sdd).
Tudo correu bem, então eu tentei adicionar novamente o disco com mdadm --add /dev/md0 /dev/sdd
, o mdadm estava reconstruindo o array, então depois de algumas horas eu verifiquei e algo deu errado, o sdc falhou.
Longa história curta: o sdc tem alguns setores defeituosos, quando o mdadm lê esses setores, ele falha.
Em / var / log / messages eu posso ver:
read error not correctable (sector 753682864 on sdc).
Eu não posso --assemble o array como ele vê sdc e sdd como defeituoso.
No entanto, posso mdadm /dev/md0 --create --assume-clean -l5 -n4 /dev/sd[abc] missing
. Depois disso eu tentei adicionar sdd mas sem sucesso.
Quando o mdadm falha e relata o setor em / var / log / messages, posso verificar isso executando hdparm --read-sector [sector] /dev/sdc
.
Quando eu sobrescrevo o setor usando hdparm --write-sector
ele é substituído e, em seguida, ele funciona novamente. Mas este é um processo muito demorado.
Existe alguma maneira de recuperar essa bagunça? Será que espelhar sdc para sdd (com dd) e, em seguida, adicionando sdd como a ajuda da unidade em falta?