Removendo um dispositivo no estado “removido” da matriz RAID do software Linux

4

Minha estação de trabalho possui dois discos (/ dev / sd [ab]), ambos com particionamento semelhante. / dev / sdb falhou e cat /proc/mdstat parou de mostrar a segunda partição sdb.

Eu executei mdadm --fail e mdadm --remove para todas as partições do disco com falha nas matrizes que as usam, embora todos esses comandos falhem com

mdadm: set device faulty failed for /dev/sdb2:  No such device
mdadm: hot remove failed for /dev/sdb2: No such device or address

Então eu troquei o disco com falha, particionei o novo disco e adicionei as partições aos respectivos arrays. Todas as matrizes foram reconstruídas corretamente, exceto uma, porque em / dev / md2, o disco com falha não parece ter sido removido da matriz corretamente. Por causa disso, a nova partição continua sendo adicionada como reserva à partição e seu status permanece degradado.

Veja o que o mdadm --detail /dev/md2 mostra:

[root@ldmohanr ~]# mdadm --detail /dev/md2
/dev/md2:
    Version : 1.1
  Creation Time : Tue Dec 27 22:55:14 2011
 Raid Level : raid1
 Array Size : 52427708 (50.00 GiB 53.69 GB)
  Used Dev Size : 52427708 (50.00 GiB 53.69 GB)
   Raid Devices : 2
  Total Devices : 2
Persistence : Superblock is persistent

  Intent Bitmap : Internal

Update Time : Fri Nov 23 14:59:56 2012
      State : active, degraded 
 Active Devices : 1
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 1

       Name : ldmohanr.net:2  (local to host ldmohanr.net)
       UUID : 4483f95d:e485207a:b43c9af2:c37c6df1
     Events : 5912611

Number   Major   Minor   RaidDevice State
   0       8        2        0      active sync   /dev/sda2
   1       0        0        1      removed

   2       8       18        -      spare   /dev/sdb2

Para remover um disco, o mdadm precisa de um nome de arquivo do dispositivo, que era / dev / sdb2 originalmente, mas que não se refere mais ao dispositivo número 1. Preciso de ajuda para remover o dispositivo número 1 com o status 'removido' sdb2 ativo.

    
por Sahas 26.11.2012 / 10:13

1 resposta

4

Se a unidade não estiver mais aparecendo no sistema, faça o seguinte:

mdadm /dev/md2 -r detached

ou

mdadm /dev/md2 -r failed

Se feito com sucesso, você deve receber uma mensagem como:

mdadm: hot removed 8:50 from /dev/md0

E a unidade não aparece mais em / proc / mdstat. Na página do manual:

"The first causes all failed device to be removed. The second causes any device which is no longer connected to the system (i.e an 'open' returns ENXIO) to be removed. This will only succeed for devices that are spares or have already been marked as failed."

    
por 22.07.2013 / 04:54