Archiv für Juni 2019

MDADM Raid1 wiederherstellen

Wenn Hardware-Raid-controller nicht vorhanden sind oder nicht ausreichend vom System unterstützt werden, sind Software-Raids eine gute Alternative. Ein Vorteil dabei ist, dass bei jedem System und bei jeder Raid-Variante, die gleichen Tools und Kommandos zum Einsatz kommen.

Hier soll es nun um die Wiederherstellung eines Raid1 aus 2 Platten nach einen Ausfall gehen. Los geht es meist mit Lesefehler.

#> dmesg
25704.754673 print_req_error: I/O error, dev sdc, sector 976912
25704.754885 md: super_written gets error=10
25704.755024 md/raid1:md0: Disk failure on sdc2, disabling device.
md/raid1:md0: Operation continuing on 1 devices.

Über das Proc-FS kann man nun mehr Details über den Zustand des Raids bekommen.

#> cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdb2[0] sdc2[1](F)
142748672 blocks super 1.2 [2/1] [U_]
bitmap: 1/2 pages [4KB], 65536KB chunk

Die Platte /dev/sdc2 ist als fehlerhaft markiert (F) und muss ersetzt werden. Dazu muss sie zunächst aus dem Raid genommen werden.

#> mdadm /dev/md0 --remove /dev/sdc2
mdadm: hot removed /dev/sdc2 from /dev/md0

#> cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdb2[0]
142748672 blocks super 1.2 [2/1] [U_]
bitmap: 1/2 pages [4KB], 65536KB chunk

Die defekte Platte kann nun entfernt werden und durch eine neue Platte mit gleicher Größe ersetzt werden. Diese muss nun erkannt werden (SCSI-Bus scannen und Partitionstabelle einlesen).

#> rescan-scsi-bus
#> partprobe

Falls die Partitionen der beiden Platten nicht übereinstimmen, kann man die Partitionstabelle von der bestehenden Platte kopieren. Danach muss diese wieder neu eingelesen werden.

#> sfdisk -d /dev/sdb | sfdisk /dev/sdc
#> partprobe

Nun kann die neue Platte (Partition) wieder zum Raid hinzugefügt werden.

#> mdadm /dev/md0 --manage --add /dev/sdc2
#> cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdc2[2] sdb2[0]
142748672 blocks super 1.2 [2/1] [U_]
[=================>...] recovery = 86.1% (123025920/142748672) finish=7.0min speed=46830K/sec
bitmap: 0/2 pages [0KB], 65536KB chunk

Und weiter geht’s!

20. Juni 2019 | Veröffentlicht von Robert Sombrutzki | Kein Kommentar »
Veröffentlicht unter Allgemein