[Eisfair] Volle root-Partition E1 mit Software-Raid 5

Thomas Zweifel t2fel at gmx.net
Mo Dez 15 12:17:36 CET 2014


Am 15.12.2014 um 10:28 schrieb Jürgen Witt:
> Am 15.12.2014 um 10:05 schrieb Thomas Zweifel:
>>>> Vorab würde mich noch der Inhalt von /etc/lilo.conf ....
> eis # cat /etc/lilo.conf
> lba32
> disk = /dev/sdb
> boot = /dev/md1
> raid-extra-boot = /dev/sdb,/dev/sdc,/dev/sdd

Alles Ok, das ist korrekt.


> das ist die interne Sicherungsplatte, auf der auch ein E1 (als mögliches
> Notfallsystem) installiert ist. Ich nutze die Extra-Partition data für
> meine Sicherung.

Alles klar.


>> Die Ausgabe bitte hier posten, dann machen wir weiter.
> 
> vielen Dank jetzt schon einmal für Deine Bemühungen. Da das ein
> Produktivsystem bei einem Kunden ist und ich die Aktion planen muß, wäre
> ich Dir sehr dankbar, wenn Du mir schon jetzt erklären würdest, wie die
> weiteren Schritte nach Deinem Plan aussehen. Ich würde das Ganze
> wahrscheinlich vorher einmal bei mir auf einem Software Raid-1
> Testsystem testen.

Kein Problem.

Mit dem resize2fs kann nichts schiefgehen, beim anschliessenden
verkleinern des raid5 allerdings schon.

Da etwa 460GB belegt sind, wird nach dem Verkleinern mit etwas aufrunden
ca. 470GB übrig bleiben, das md4 kannst du demnach auf etwa 500GB
verkleinern
(belegte blöcke * blockgrösse / anz.Nutzplatten + etwas aufrunden)

mdadm -G -z262144000 /dev/md4

Die Angabe ist der genutzte Platz pro Partition in kB (250GB in dem Fall)
(Beim raid1 das Du zum Testen aufsetzt wäre es 500GB, da nur eine
Nutzplatte)

Wenn du das raid verkleinert hast, sicherheitshalber nochmals einen

e2fsck -f -C0 /dev/md4

drüberlassen, und bei Fehlermeldungen abbrechen und das raid etwas
vergrössern.
Solange das md4 nicht gemountet ist wird dabei nichts verlorengehen.

Danach kannst du den Platz vom verkleinerten raid wieder belegen.

resize2fs -p /dev/md4


Wenn das erledigt ist, kannst du md4 mounten und die Dienste wieder
starten. Die restlichen Schritte kannst Du online durchführen.


Starten wir mit sdb
Die Partitionen von sdb markieren wir als defekt und werfen sie aus dem raid

for i in 1 2 3 4 ; do mdadm --fail /dev/md$i /dev/sdb$i ; mdadm --remove
/dev/md$i /dev/sdb$i ; done        (alles in eine zeile)

for i in 3 4 ; do mdadm --zero-superblock /dev/sdb$i ; done


Jetzt startest du fdisk und löschst sdb3 und 4, und erstellst neue mit
deiner Wunschgrösse. (Typ fd nicht vergessen)

Anschliessend mit

cat /proc/partitions

kontrollieren ob die Partitionen aktualisiert wurden, ansonsten neustarten.


Wenn alles gut aussieht sdb wieder ins raid einfügen

for i in 1 2 3 4 ; do mdadm --add /dev/md$i /dev/sdb$i ; done

und abwarten bis der resync erledigt ist.


Das ganze wiederholst du noch mit sdc und sdd


Wenn Du soweit alles durch hast bleibt nur noch md3 und md4 auf die neue
Partitionsgrösse anzupassen.

for i in 3 4 ; do mdadm -G -zmax /dev/md$i ; done

for i in 3 4 ; do resize2fs -p /dev/md$i ; done


Das wars auch schon :-)



Viel spass beim testen ;-)

Gruss Thomas


Mehr Informationen über die Mailingliste Eisfair