GNU/Linux >> LINUX-Kenntnisse >  >> Debian

Erweiterung eines Software-RAIDs auf Debian durch Migration auf neue große Festplatten

Die Einrichtung:Zwei physische Laufwerke eines RAID 1 (Spiegel) werden durch zwei größere Laufwerke ersetzt, wir führen einen "heißen" Austausch direkt aus dem laufenden Betriebssystem durch, ohne dass von einem externen Bootmedium gebootet werden muss. Diese Anleitung wurde auf den Debian-Distributionen 6, 7, 8 mit 32 und 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

Mach erstmal ein Backup all deiner Daten, auch wenn die Anleitung schon mehrfach getestet wurde, Pech ist immer noch da... Wir sorgen (meiner Meinung nach die beste Lösung) für Ersatz, wir trennen einen der beiden alten Laufwerke bei ausgeschaltetem Computer, schließen Sie dann ein neues temporäres Laufwerk an und synchronisieren Sie dann erneut, sodass das RAID weiterhin funktioniert und ein einzelnes Laufwerk (mit RAID im eingeschränkten Modus) vorhanden ist und Sie immer noch ein funktionierendes RAID erstellen können, wenn etwas nicht funktioniert. Geben Sie dazu einfach diese Befehle ein, nachdem Sie das volle 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 auf dem System

(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 verschoben und diese dann zum RAID hinzugefügt.

Natürlich müssen Sie bis zum Ende des Rekonstruktionsprozesses warten, überwacht von:

watch cat / pro / mdstat

(Und natürlich STRG + C, um den Vorgang zu beenden)

Fahren Sie die Maschine an diesem Punkt herunter, fügen Sie zwei neue Festplatten hinzu, die jeweils sdc und sdd werden, starten Sie dann den Server und führen Sie den Befehl aus:

fdisk -l

Das Ergebnis sollte etwa so 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

Geben Sie nun Folgendes 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, etc ...),

wir wählen den Startzylinder (1 ),

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

Wir machen es mit dem Befehl a bootfähig , indem Sie dieselbe Partitionsnummer auswählen.

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

Dann wiederholen wir ALLE Befehle für die zweite Partition (die Partition wird die Auslagerung).

Wir speichern die Änderungen mit w.

Achten Sie natürlich auf die Größe der Partitionen. Die beste Lösung besteht darin, die aktuelle Auslagerungsgröße vom gesamten freien Speicherplatz abzuziehen, um die Arbeitspartition mit dem größtmöglichen Speicherplatz zu erstellen.

Jetzt führen wir genau die gleichen Vorgänge auf dem SDD-Laufwerk durch und stellen sicher, dass Sie dieselbe Partition mit denselben Größen wie zuvor erstellen.

An diesem Punkt führen wir einen Austausch zwischen dem ersten "vollen" Laufwerk und dem ersten neuen Laufwerk durch und fügen letzteres als Reserve dem RAID hinzu:

mdadm -add /dev/md0 /dev/sdc1

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

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

Dann legen wir das Originallaufwerk ein:

mdadm -f /dev/md0 /dev/sda1

und entfernen Sie 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 sie erneut überwachen mit:

watch cat /proc/mdstat

(Und natürlich STRG + C, um den Vorgang zu beenden)

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

grub-install /dev/sdc

Derselbe Vorgang muss nur 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 wieder, bis die Rekonstruktion fertig ist:

watch cat /proc/mdstat

(Und natürlich STRG + C, um den Vorgang zu beenden)

Führen Sie als Nächstes dasselbe Verfahren für die erste Swap-Partition von zwei neuen Laufwerken 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 STRG + C, um den Vorgang 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 STRG + C, um den Vorgang zu beenden)

Installieren Sie an dieser Stelle den Bootloader auf beiden Laufwerken neu:

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

An diesem Punkt wird das alte Laufwerk aus dem RAID ausgeschlossen, und die neuen Laufwerke sind eingebaut und betriebsbereit. Aber mit dem nutzbaren Platz unterhalb des von der Partition erlaubten Maximums

Dann fahren wir mit der Erweiterung der Partition und deren Überprüfung fort, wie für beide Volumes üblich:

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 den Computer neu.

Auch wenn der Neustart funktioniert hat, rekonstruieren wir den Grub aus Sicherheitsgründen, da der Start des neuen Laufwerks den Namen des alten angenommen hat (sda und sdb):

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

Wenn Sie absolut sicher sein wollen, dass das neue Raid-Setup funktioniert, fahren Sie die Maschine herunter, trennen Sie eines der neuen Laufwerke und starten Sie erneut. Es sollte ohne Probleme starten. Danach wieder herunterfahren, Laufwerk anschließen und starten. Sie können diesen Befehl verwenden, um den RAID-Status zu überprüfen.

watch cat /proc/mdstat

(Und natürlich STRG + C, um den Vorgang zu beenden)

Wir haben die Arbeit beendet, wir feiern .


Debian
  1. Debian 10 (Buster) veröffentlicht – Neue Funktionen

  2. Debian 8 Jessie veröffentlicht – Was ist neu?

  3. Installieren von GRUB2 auf mdadm Software Raid in Debian Wheezy/Jessie

  4. Debian – Richtiger Weg zur Verwendung von Onfailure in Systemd?

  5. Debian – Devuan/Debian-Installation kann nicht gestartet werden?

So installieren Sie die Syncthing Remote-Dateisynchronisierungssoftware unter Debian 11

Installieren und konfigurieren Sie die Monitorix-Überwachungssoftware unter Debian 10

So installieren Sie die CTparental-Kindersicherungssoftware unter Debian 10

So installieren Sie Software über Flatpak auf Debian 10

So installieren Sie die OBS-Bildschirmaufzeichnungssoftware unter Debian 10

Was ist neu in Debian 11 „Bullseye“