RAID Verwaltung · 6 min read · Nov 14, 2025

Erweiterung eines Software-RAID auf Debian durch Migration zu neuen großen Festplatten

Die Einrichtung: zwei physische Laufwerke eines RAID 1 (Spiegelung) werden durch zwei größere Laufwerke ersetzt, wir führen einen “Hot”-Austausch direkt aus dem laufenden Betriebssystem durch, ohne dass ein Booten von einem externen Bootmedium erforderlich ist. Dieser Leitfaden wurde auf Debian-Distributionen 6, 7, 8 sowohl 32 als auch 64 Bit getestet.

Wir gehen davon aus, dass die beiden Laufwerke mit einer Root- und einer Swap-Partition partitioniert sind und dass diese beiden Partitionen die beiden RAID-Geräte md0 und md1 bilden:

  • Die sda1- und sdb1-Partition, die das Volume md0 (Root) bilden
  • Die sda2- und sdb2-Partitionen, die das Volume md1 (Swap) bilden

Zuerst machen Sie ein Backup aller Ihrer Daten, auch wenn der Leitfaden mehrere Male getestet wurde, Pech kann immer noch passieren … Wir bieten (meiner Meinung nach die beste Lösung) für einen Austausch an, wir trennen eines der beiden alten Laufwerke mit ausgeschaltetem Gerät, verbinden dann ein neues temporäres Laufwerk, synchronisieren dann erneut, sodass wir das RAID weiterhin funktionsfähig haben und ein einzelnes Laufwerk (mit RAID im degradierten Modus) und Sie können weiterhin ein funktionierendes RAID erstellen, wenn etwas nicht funktioniert. Geben Sie dazu einfach diese Befehle ein, nachdem Sie das vollständige Laufwerk durch das leere ersetzt haben:

sfdisk -d /dev/hd source | sfdisk —force /dev/hd empty  
mdadm —zero-superblock /dev/hd empty  
mdadm —add /dev/md(raid) /dev/hd(empty)

Wiederholen Sie die letzten beiden Zeilen für jedes RAID / jede Partition im System

(zum Beispiel:

mdadm -add /dev/md0 /dev/sdb1 

dann

mdadm -add /dev/md1 /dev/sdb2

usw..

Auf diese Weise haben wir die Partitionstabelle vom Quelllaufwerk auf das leere Ziel gezwungen und fügen dies dem RAID hinzu.

Offensichtlich müssen Sie warten, bis der Rekonstruktionsprozess abgeschlossen ist, überwacht durch:

watch cat / pro / mdstat

(Und natürlich CTRL + C, um den Prozess zu beenden)

Schalten Sie das Gerät an diesem Punkt aus, fügen Sie zwei neue Festplatten hinzu, die jeweils zu sdc und sdd werden, starten Sie dann den Server und führen Sie den Befehl aus:

fdisk -l

Das Ergebnis sollte ähnlich aussehen:

Disk /dev/sda: ……MB , ………….Bytes  
… heads, …sectors/track , ….. cylinders  
I/O size (minimum/optimal): 512 bytes / 512 bytes  
Disk: identifier : ………..
Device boot Start End Blocks Id   System
/dev/sda2        970           1044 602437+ fd   Linux raid autodetect
/dev/sda2            1 969 7783461 fd   Linux raid autodetect 
……
/dev/sdb1     *       1 969 7783461 fd   Linux raid autodetect 
/dev/sdb2            970        1044 602437+ fd   Linux raid autodetect 
……
Disk /dev/sdc: …Mb, …….Bytes
……
Disk /dev/sdd: …Mb, …….Bytes
……
Disk /dev/md0: …Mb, …….Bytes
…...
Disk /dev/md1: …Mb, …….Bytes

Jetzt geben Sie ein:

fdisk /dev/sdc

wir erstellen eine neue Partition mit dem n-Befehl,

wir wählen p primäre Partition,

wir wählen die Partitionsnummer ( 1,2,3, usw …),

wir wählen den Startzylinder ( 1),

wir wählen die Größe der primären Partition, indem wir das +-Symbol gefolgt von der Größe in GB und GB von Buchstaben eingeben (zum Beispiel: +480GB)

wir machen sie bootfähig mit dem Befehl a, wobei wir die gleiche Partitionsnummer auswählen.

wir ändern die Partitions-ID in “ fd “ (Linux Raid Autodetect) mit t, und schreiben als Hex-Code einfach “ fd

Dann wiederholen wir ALLE Befehle für die zweite Partition (die Partition wird die Swap-Partition sein).

Wir speichern die Änderungen mit w.

Offensichtlich müssen Sie auf die Größe der Partitionen achten. Die beste Lösung ist, die aktuelle Swap-Größe von der Gesamtheit des freien Speicherplatzes abzuziehen, um die Arbeitspartition mit dem größtmöglichen Platz zu erstellen.

Jetzt führen wir genau die gleichen Operationen auf dem SDD-Laufwerk durch und stellen sicher, dass wir die gleiche Partition mit den gleichen Größen erstellen, die wir zuvor verwendet haben.

An diesem Punkt tauschen wir das erste “volle” Laufwerk und das erste neue Laufwerk aus und fügen letzteres als Ersatz zum RAID hinzu:

mdadm -add /dev/md0 /dev/sdc1

Dann sollten wir die RAID-Disk-Situation überprüfen, sie sollte so aussehen:

md0: active raid 1 sdc1[S] sda1[2] sdb1[3]
 ………blocks super 1.2 [2/2] [UU]

Dann setzen wir das ursprüngliche Laufwerk ein:

mdadm -f /dev/md0 /dev/sda1

und entfernen es aus dem RAID:

mdadm -r /dev/md0 /dev/sda1

Jetzt überprüfen wir, ob die Rekonstruktion automatisch gestartet wurde, und warten, bis sie abgeschlossen ist, indem wir erneut überwachen mit:

watch cat /proc/mdstat

(Und natürlich CTRL + C, um den Prozess zu beenden)

Am Ende installieren wir den Bootloader (grub) auf dem neuen Laufwerk (/ dev / sdc):

grub-install /dev/sdc

Der gleiche Prozess muss einfach für jede der Systempartitionen wiederholt werden:

mdadm -add /dev/md0 /dev/sdd1
mdadm -f /dev/md0 /dev/sdb1
mdadm -r /dev/md0 /dev/sdb1

Und wir warten erneut, bis die Rekonstruktion abgeschlossen ist:

watch cat /proc/mdstat

(Und natürlich CTRL + C, um den Prozess zu beenden)

Als nächstes führen wir dasselbe Verfahren für die erste Swap-Partition der beiden neuen Laufwerke durch:

mdadm -add /dev/md1 /dev/sdc2
mdadm -f /dev/md0 /dev/sda2
mdadm -r /dev/md0 /dev/sda2

Warten Sie erneut, bis die Rekonstruktion abgeschlossen ist:

watch cat /proc/mdstat

(Und natürlich CTRL + C, um den Prozess zu beenden)

Und das letzte Laufwerk:

mdadm -add /dev/md1 /dev/sdd2
mdadm -f /dev/md0 /dev/sdb2
mdadm -r /dev/md0 /dev/sdb2

Warten Sie erneut, bis die Rekonstruktion abgeschlossen ist:

watch cat /proc/mdstat

(Und natürlich CTRL + C, um den Prozess zu beenden)

An diesem Punkt installieren Sie den Bootloader auf beiden Laufwerken:

grub-install /dev/sdc
grub-install /dev/sdd

An diesem Punkt haben wir das alte Laufwerk aus dem RAID entfernt, und die neuen Laufwerke sind eingebaut und betriebsbereit. Aber mit dem nutzbaren Speicher unter dem maximal erlaubten durch die Partition.

Dann fahren wir mit der Vergrößerung der Partition und der Überprüfung dieser wie gewohnt für beide Volumes fort:

mdadm —grow —raid-devices=2 /dev/md0
mdadm -A —scan
mdadm —grow /dev/md0 —size=max
mdadm —examine —scan
e2fsck -f /dev(md0
resize2fs /dev/md0
mdadm —grow —raid-devices=2 /dev/md1
mdadm -A —scan
mdadm —grow /dev/md1 —size=max
mdadm —examine —scan
e2fsck -f /dev/md1
resize2fs /dev/md1

Wenn Sie fertig sind, schalten Sie den PC aus, trennen Sie die alten Laufwerke und starten Sie die Maschine neu.

Auch wenn der Neustart erfolgreich war, rekonstruieren wir den grub aus Sicherheitsgründen, da der Start des neuen Laufwerks den Namen des alten (sda und sdb) angenommen haben wird:

mv /boot/grub/device.map/boot/grub/device.map.old
grub-mkdevicemap
update-grub2 && grub-install /dev/sda && grub-install /dev/sdb

Wenn Sie sich absolut sicher sein wollen, dass die neue RAID-Konfiguration funktioniert, schalten Sie die Maschine aus, trennen Sie eines der neuen Laufwerke und starten Sie erneut. Es sollte ohne Probleme starten. Danach schalten Sie erneut aus, verbinden das Laufwerk und starten. Sie können diesen Befehl verwenden, um den RAID-Zustand zu überprüfen.

watch cat /proc/mdstat

(Und natürlich CTRL + C, um den Prozess zu beenden)

Wir haben die Arbeit abgeschlossen, wir feiern.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.