Wir haben einen RAID 10 mit zwei ausgefallenen Laufwerken, von denen jeweils ein Laufwerk noch funktionsfähig ist.
Beim Booten in das Rettungssystem scheinen die Metadaten in Ordnung zu sein und mit dem erwarteten Zustand übereinzustimmen.
Die Metadaten von mdadm --detail
der MD sind wie folgt:
Version : 1.1
Creation Time : Mon Mar 16 15:53:57 2015
Raid Level : raid10
Used Dev Size : 975581184 (930.39 GiB 999.00 GB)
Raid Devices : 4
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Mon May 28 08:52:58 2018
State : active, FAILED, Not Started
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Layout : near=2
Chunk Size : 512K
Name : 2
UUID : 34f4a5fa:4b8e03fa:3119b353:f45188a0
Events : 8618632
Number Major Minor RaidDevice State
0 8 1 0 active sync set-A /dev/sda1
1 8 17 1 active sync set-B /dev/sdb1
4 0 0 4 removed
6 0 0 6 removed
Das init-System kann den Raid nicht zusammenstellen, da der Kernel angibt, dass nicht genügend Spiegel vorhanden sind.
(...)
md/raid10:md2: not enough operational mirrors.
md: pers->run() failed ...
dracut: mdadm: failed to start array /dev/md2: Input/output error
(...)
Der Versuch, den Raid manuell zusammenzustellen ( mdadm --assemble --readonly --force /dev/md2 /dev/sd[ab]1
), führt zu folgendem Ergebnis:
/dev/md2:
Version : 1.1
Raid Level : raid0
Total Devices : 1
Persistence : Superblock is persistent
State : inactive
Name : 2
UUID : 34f4a5fa:4b8e03fa:3119b353:f45188a0
Events : 8618632
Number Major Minor RaidDevice
- 8 1 - /dev/sda1
Wenn Sie --examine
die Metadaten der beteiligten Laufwerke überprüfen, erhalten Sie eine konsistente Ausgabe mit dem erwarteten Status (vor und nach dem manuellen Zusammenbau):
/dev/sda1:
Magic : a92b4efc
Version : 1.1
Feature Map : 0x1
Array UUID : 34f4a5fa:4b8e03fa:3119b353:f45188a0
Name : 2
Creation Time : Mon Mar 16 15:53:57 2015
Raid Level : raid10
Raid Devices : 4
Avail Dev Size : 1951162368 (930.39 GiB 999.00 GB)
Array Size : 1951162368 (1860.77 GiB 1997.99 GB)
Data Offset : 262144 sectors
Super Offset : 0 sectors
Unused Space : before=262064 sectors, after=0 sectors
State : clean
Device UUID : 89288c87:2cf8f6cd:483328b4:fffb3db6
Internal Bitmap : 8 sectors from superblock
Update Time : Mon May 28 08:52:58 2018
Bad Block Log : 512 entries available at offset 72 sectors
Checksum : eaf59503 - correct
Events : 8618632
Layout : near=2
Chunk Size : 512K
Device Role : Active device 0
Array State : AAA. ('A' == active, '.' == missing, 'R' == replacing)
Wir sind uns bewusst, dass das dritte aktive Laufwerk entfernt wurde, aber dies sollte nicht die Wurzel des Problems sein.
Unsere zwei Hauptfragen sind also:
- Warum stimmt der Status des Arrays nicht mit den einzelnen Laufwerken überein?
- Wie kann das gelöst werden?
Für den Datensatz: CentOS 6 mit einer Kernel-Version 2.6.32-696.30.1.el6.x86_64