Controlando a ordem de reconstrução de disco defeituoso do mdadm no array RAID 10

1

Eu tenho um array mdadm RAID 10 do Linux, composto de 6 (SATA) discos configurados com n2 cópias.

Ao retirar um disco, outro em outro par de espelhos falhou. Deixando-me com:

$ cat /proc/mdstat
md2 : active raid10 sdb1[1] sdd1[5] sdc1[3] sdf1[2]
  2929412352 blocks 64K chunks 2 near-copies [6/4] [_UUU_U]

Eu queria substituir o 5º disco e reconstruir a tabela de partições com: sfdisk -d /dev/sdf | sfdisk /dev/sde

No entanto, quando eu adiciono o novo disco com mdadm -a /dev/md1 /dev/sde1 , o mdadm começa a reconstruir o RaidDevice 0

$ mdadm -D /dev/md2
...
Number   Major   Minor   RaidDevice State
   6       8       66        0      spare rebuilding   /dev/sde1
   1       8        2        1      active sync   /dev/sdb1
   2       8       17        2      active sync   /dev/sdc1
   3       8       33        3      active sync   /dev/sdd1
   4       0        0        4      removed
   5       8       49        5      active sync   /dev/sdf1

Este não é um problema importante e eu só preciso mover fisicamente o disco 5 para o slot do disco 1 para manter alguma sanidade quando olhar para a caixa.

A minha pergunta é, existe uma maneira de instruir o mdadm para usar um novo disco para substituir um RaidDevice específico? Eu vasculhei as man pages, mas não consegui encontrar uma opção adequada.

    
por Alastair McCormack 10.10.2012 / 11:41

1 resposta

1

Eu não vi essa opção, mesmo em controladores RAID de hardware. Você pode adicionar peças de reposição apenas para alguns ataques, mas não para discos especificados. Talvez alguns controladores façam isso, mas nem todos ...

Tanto quanto eu sei, mdadm não tem essa opção também. Mas você pode tentar fazer esse truque: fazer o despejo de superbloco (metadados) alvo de disco com falha (sde?) E enviá-lo para o seu disco reserva. Talvez, a opção --re-add é fazer o que quiser, mas não tenho certeza.

do homem: --re-adicionar     adicione novamente um dispositivo que foi removido anteriormente de uma matriz. Se os metadados no dispositivo informarem que é um membro da matriz e o slot que ele usou ainda estiver vazio, o dispositivo será adicionado novamente à matriz na mesma posição.

    
por 18.10.2012 / 11:47