============================================================ 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 < 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 ------------------------------------------------------------ 6) Abschließende Kontrolle ------------------------------------------------------------ - Blockgeräte prüfen: lsblk -o NAME,SIZE,TYPE,MOUNTPOINT - RAID-Details: mdadm --detail /dev/mdX - Dateisystemgröße: df -h ------------------------------------------------------------ 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.