Files
mdadm/raid6-expand.txt

146 lines
4.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

============================================================
Anleitung: RAID-6 Array erweitern (mdadm, GPT, ext4/xfs)
============================================================
Diese Anleitung beschreibt die Erweiterung eines bestehenden
RAID-6-Arrays, nachdem die einzelnen RAID-Mitgliedsplatten physisch
durch größere Platten ersetzt wurden und ein Resync durchgeführt wurde.
ACHTUNG:
- Nur durchführen, wenn RAID in "clean"-State ist.
- Backup wichtiger Daten wird dringend empfohlen.
- Root-Rechte erforderlich.
- Beispielangaben (Gerätenamen) anpassen!
------------------------------------------------------------
1) Vorbereitung & Kontrolle
------------------------------------------------------------
1.1 Prüfen, dass alle neuen, größeren Platten erkannt werden:
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT
1.2 RAID-Status prüfen:
cat /proc/mdstat
mdadm --detail /dev/mdX
1.3 Sicherstellen, dass der Status "clean" ist.
Falls "resync" oder "recovery" läuft → warten, bis fertig.
------------------------------------------------------------
2) Partitionstabellen sichern
------------------------------------------------------------
Für jedes RAID-Mitgliedsgerät:
sfdisk -d /dev/sdX > backup-sdX-YYYYMMDD.sfdisk
------------------------------------------------------------
3) Partitionen auf Mitgliedsplatten vergrößern
------------------------------------------------------------
Für jede Platte:
- Startsektor unverändert lassen!
- Partition bis zum maximal verfügbaren Platz vergrößern.
- GPT-Partitionstyp unverändert lassen.
- TYP 'A19D880F-05FC-4D3B-A006-743F0F84911E' für Linux-RAID
1. Vergrößern auf maximal verfügbaren Platz mit sfdisk:
- GPT-UUID ermitteln z.bsp. für partition 1 von /dev/sda1:
lsblk -no PARTTYPE "/dev/sda1"
- Partition 1 con /dev/sdX vergrößern
sfdisk --no-reread --force -N 1 /dev/sdX <<EOF
,,type=A19D880F-05FC-4D3B-A006-743F0F84911E
EOF
--no-reread: Verhindert, dass der Kernel die Partitionstabelle sofort neu einliest.
--force: Erzwingt Änderungen auch dann, wenn sfdisk normalerweise abbrechen würde,
z. B. weil die Partition in Benutzung ist.
N 1: Bearbeitet nur die angegebene Partitionsnummer hier also Partition 1.
Eingabe-Redirect <<EOF ... EOF: Damit wird der eigentliche neue Partitions-Eintrag
an sfdisk per Here-Document übergeben.
Startsektor, Größe, Typ
- Startsektor: Wenn leer (""), bleibt der bisherige Startsektor erhalten.
- Größe: Wenn leer (""), nimmt sfdisk den maximal verfügbaren Platz bis zum Plattenende.
- Typ: Hier type=<GPT-UUID>
oder
1. Vergrößern auf maximal verfügbaren Platz mit parted:
parted /dev/sdX
(parted) print
(parted) resizepart 1 100%
(parted) quit
oder in einer Zeile:
parted -s /dev/sdX resizepart 1 100%
2. Danach Partitionstabelle neu einlesen:
partprobe /dev/sdX
udevadm settle
Bemerkung 'parted' im Vergleich zu sfdisk:
- sfdisk ist "roh", arbeitet auf Sektorebene - super für Skripte, aber etwas sperrig für Menschen.
- parted versteht Größenangaben wie 100%, 10TiB, etc. und ist interaktiv angenehmer. resize verändert
nur die Größe, nicht den Typcode - der Linux-Typ bleibt also bestehen.
- Für ein Skript wäre sfdisk robuster, weil es keine Rückfragen stellt und 100 % skriptfähig ist.
------------------------------------------------------------
4) RAID-Array vergrößern
------------------------------------------------------------
Nachdem alle Partitionen angepasst sind:
mdadm --grow /dev/mdX --size=max
Anschließend auf Abschluss des internen Resync warten:
watch cat /proc/mdstat
------------------------------------------------------------
5) Dateisystem vergrößern
------------------------------------------------------------
Je nach Dateisystem:
- ext4:
resize2fs /dev/mdX
- xfs (muss gemountet sein):
xfs_growfs <Mountpoint>
------------------------------------------------------------
6) Abschließende Kontrolle
------------------------------------------------------------
- Blockgeräte prüfen:
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT
- RAID-Details:
mdadm --detail /dev/mdX
- Dateisystemgröße:
df -h <Mountpoint>
------------------------------------------------------------
Hinweise
------------------------------------------------------------
- GPT-Typcode ermitteln - z.bsp. mit
lsblk -no PARTTYPE /dev/sdX1
für Linux RAID Partition (bei dir):
A19D880F-05FC-4D3B-A006-743F0F84911E
- Wenn nur einzelne Platten ersetzt/geändert werden:
Schrittweise vorgehen: Platte ersetzen - RAID resync - nächste Platte.
- Bei Einsatz von LUKS oder LVM: Zusätzliche Schritte für LUKS-Resize
bzw. LVM PV Resize nach dem RAID-Resize durchführen.