reconstruindo o mdadm raid5

1

Eu espanquei de uma máquina da qual eu quero consertar um ataque mdadm que eu errei. Primeiro o raid5 foi de 3 discos. Um sobressalente foi adicionado, pouco antes de um dos três começar a falhar. O Spare foi usado e o disco com falha foi removido. Agora, meses depois, não consigo montá-lo corretamente. O array está quebrado.

compilação original:

root# mdadm --create --metadata=1.0 --verbose /dev/md127 --chunk=512 --level=5 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1

situação atual:

$ cat /proc/mdstat 
Personalities : 
md127 : inactive sdb1[1](S) sda1[0](S)
  3677730784 blocks super 1.0

unused devices: <none>  

mdadm -D / dev / md127

sudo mdadm -D /dev/md127
/dev/md127:
    Version : 1.0
 Raid Level : __raid0__
Total Devices : 1
Persistence : Superblock is persistent

      State : inactive

       Name : nas:127  (local to host nas)
       UUID : 71da073c:d1928293:6947fa19:92d8a7bd
     Events : 1

Number   Major   Minor   RaidDevice

   -       8       17        -        /dev/sdb1

saída de examine para cada passeio

$ sudo mdadm -E /dev/sd{b,c,e}1
**/dev/sdb1**:
      Magic : a92b4efc
    Version : 1.0
Feature Map : 0x1
 Array UUID : 71da073c:d1928293:6947fa19:92d8a7bd
       Name : nas:127  (local to host nas)
Creation Time : Sun Dec 10 23:26:56 2017
 Raid Level : raid5
Raid Devices : 4

Avail Dev Size : 3677730784 (1753.68 GiB 1883.00 GB)
 Array Size : 5516594688 (5261.03 GiB 5648.99 GB)
Used Dev Size : 3677729792 (1753.68 GiB 1883.00 GB)
Super Offset : 3677730800 sectors
Unused Space : before=0 sectors, after=992 sectors
      State : clean
Device UUID : e1fdc3d2:b0f117a5:11856184:17db9522

Internal Bitmap : -16 sectors from superblock
Update Time : Mon Dec 18 11:48:12 2017
Bad Block Log : 512 entries available at offset -8 sectors
   Checksum : 54a1b1a7 - correct
     Events : **1**

     Layout : left-symmetric
 Chunk Size : 512K

Device Role : Active device 1
Array State : AA.. ('A' == active, '.' == missing, 'R' == replacing)

**/dev/sdc1**:
      Magic : a92b4efc
    Version : 1.0
Feature Map : 0x1
 Array UUID : a1498410:d13b2b4a:63379f8d:c821173f
       Name : fileserver:127
Creation Time : Mon Jan 19 15:35:41 2015
 Raid Level : raid5
Raid Devices : 4

Avail Dev Size : 3677730536 (1753.68 GiB 1883.00 GB)
 Array Size : 5516594688 (5261.03 GiB 5648.99 GB)
Used Dev Size : 3677729792 (1753.68 GiB 1883.00 GB)
Super Offset : 3677730800 sectors
Unused Space : before=0 sectors, after=992 sectors
      State : clean
Device UUID : 472f7a29:679e1f18:87ee0d4c:88b2a62b

Internal Bitmap : -16 sectors from superblock
Update Time : Sun Dec 10 21:09:34 2017
Bad Block Log : 512 entries available at offset -8 sectors
   Checksum : 68dd142f - correct
     Events : **1934728**

     Layout : left-symmetric
 Chunk Size : 512K

Device Role : Active device 1
Array State : AAAA ('A' == active, '.' == missing, 'R' == replacing)

**/dev/sde1**:
      Magic : a92b4efc
    Version : 1.0
Feature Map : 0x1
 Array UUID : 71da073c:d1928293:6947fa19:92d8a7bd
       Name : taknas:127  (local to host taknas)
Creation Time : Sun Dec 10 23:26:56 2017
 Raid Level : raid5
Raid Devices : 4

Avail Dev Size : 3677730784 (1753.68 GiB 1883.00 GB)
 Array Size : 5516594688 (5261.03 GiB 5648.99 GB)
Used Dev Size : 3677729792 (1753.68 GiB 1883.00 GB)
Super Offset : 3677730800 sectors
Unused Space : before=0 sectors, after=992 sectors
      State : clean
Device UUID : ebd3b12c:975c1a0b:4653f1ed:e9788e37

Internal Bitmap : -16 sectors from superblock
Update Time : Mon Dec 18 11:48:12 2017
Bad Block Log : 512 entries available at offset -8 sectors
   Checksum : 931a5e9d - correct
     Events : **1**

     Layout : left-symmetric
 Chunk Size : 512K

Device Role : Active device 0
Array State : AA.. ('A' == active, '.' == missing, 'R' == replacing)

pensando em voz alta:

Parece que o raid5 falhou, entrou no raid0 com 2 discos, enquanto o sda1 não está lá. E no modo de reposição.
Além disso, o contador de eventos é redefinido para sdb1 e sde1. sdb1 parece estar em outro array. Eu posso ter esquecido de remover o disco com falha da matriz corretamente, como ele pensa que consiste em 4.

Não tenho certeza do que fazer aqui para reparar o array do RAID e manter os dados intactos.

    
por nieweling 10.06.2018 / 00:08

1 resposta

0

Provavelmente há algo em sudo dmesg sobre sdb1 sendo montado como parte de um raid0 md127. Isso é curioso, você provavelmente deveria examiná-lo.

De qualquer forma, esse array disfuncional precisa ser interrompido porque está sobrecarregando o sdb1 agora:

sudo mdadm --stop /dev/md127

Em seguida, tente montá-lo com o que parece ser o direito de dois em três:

sudo mdadm --assemble /dev/md127 /dev/sdb1 /dev/sde1 --verbose

Se isso der certo, adicione o ímpar:

sudo mdadm /dev/md127 --add /dev/sdc1
    
por 10.06.2018 / 21:36

Tags