Inhaltsverzeichnis

Linux Raid vergroessern

Ausgangssituation

Partitionstabelle der Platte(n) soll angepasst werden und dabei wird eine Partition geloescht. Der so entstandene Platz soll vom vorhandenen Raid-1 Array verwendet werden.

Schritt fuer Schritt

  1. Altes (zu loeschendes) Array anhalten:
    umount /dev/mdX
    mdadm --stop /dev/mdX
    mdadm --zero-superblock /dev/sdaX
    mdadm --zero-superblock /dev/sdbX
  2. Eine Platte des zu erweiterenden Arrays anhalten (Array laeuft weiter):
    mdadm -f /dev/mdX /dev/sdaX
    mdadm -r /dev/mdX /dev/sdaX
  3. Die zuvor entfernte Platte umpartitionieren mit z.B.
    cfdisk /dev/sda
  4. Partitionstabellen neu einlesen:
    partprobe /dev/sda
  5. Neu erstellte Partition zum vorhandenen Array hinzufuegen:
    mdadm --add /dev/mdX /dev/sdaX
  6. Resync beschleunigen:
    echo 200000 > /proc/sys/dev/raid/speed_limit_max
  7. Warten bis Resync fertig:
    cat /proc/mdstat
  8. Weiter mit anderer Platte:
    mdadm -f /dev/mdX /dev/sdbX
    mdadm -r /dev/mdX /dev/sdbX
    cfdisk /dev/sdb
    partprobe /dev/sdb
    mdadm --add /dev/mdX /dev/sdbX
    echo 200000 > /proc/sys/dev/raid/speed_limit_max

    Und warten bis resync fertig.

  9. Das SW-Raid jetzt vergroessern:
    mdadm --grow /dev/mdX --size=max

    Und warten bis resync fertig.

  10. Jetzt das Dateisystem wachsen lassen:
    resize2fs /dev/mdY

Fazit

Das Vorgehen kann auch beim Tauschen von Platten (z.B. gehen groessere) verwendet werden. Der Vorteil ist, dass der ganze Vorgang online laeuft.

Quellen