Problem
Unsere Ausgangslage ist ein Linux Server (hier: SLES10) mit LVM eingerichtet. Die Partitionstabelle schaut so aus:
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/system-root
14G 4.1G 8.9G 32% /
udev 377M 136K 376M 1% /dev
/dev/sda1 69M 9.6M 56M 15% /boot
Nun haben wir aber ein Platzproblem, die Platte laeuft langsam voll. Zum Glueck haben wir vorausgedacht: auf /dev/sda haben wir noch 5GB ungenutzten Speicherplatz. Diesen wollen wir nun ebenfalls / zuweisen.
Lösung
Hinweis: Auch wenn diese Anleitung mit einem SLES10-System erstellt wurde (sorry, da kann ich auch nix dafuer, die Distributionswahl ist nicht in meiner Entscheidungsgewalt
) sollte sie fuer die meisten Linux-Distributionen gueltig sein.
Dann mal los:
Freien Speicherplatz partitionieren
Zuerst muss der freie Speicherplatz als “Linux LVM” partitioniert werden. Die ID fuer diesen Partition Type ist 8e.
Wichtig: Anschliessend muss die Partitionstabelle neu eingelesen werden, sonst ist die neue Partition nicht sichtbar. Der Befehl dazu: partprobe
Physical Volume erstellen und in VG einbinden
Weiter gehts mit ein paar LVM-Befehlen: Zuerst muss in der neuen Partition (hier: /dev/sda5) ein sog. Physical Volume eingerichtet werden:
tteam01:~ # pvcreate /dev/sda5 Physical volume "/dev/sda5" successfully created
Sodele, fast am Ziel.
Das bestehende Volume vergroessern
Dazu muss die neue Partition zuerst der VG zugewiesen werden.
tteam01:~ # vgs
VG #PV #LV #SN Attr VSize VFree
system 1 2 0 wz--n- 14.93G 28.00M
tteam01:~ #
tteam01:~ # vgextend -v system /dev/sda5
Checking for volume group "system"
Archiving volume group "system" metadata (seqno 3).
Adding physical volume '/dev/sda5' to volume group 'system'
Wiping cache of LVM-capable devices
Volume group "system" will be extended by 1 new physical volumes
Creating volume group backup "/etc/lvm/backup/system" (seqno 4).
Volume group "system" successfully extended
tteam01:~ #
tteam01:~ # vgs
VG #PV #LV #SN Attr VSize VFree
system 2 2 0 wz--n- 19.92G 5.02G
Und nun muss noch das LV vergroessert werden. Wir vergroessern das LV hier einfach auf die maximale Groesse:
tteam01:~ # lvextend -v -l +100%FREE /dev/system/root
Finding volume group system
Archiving volume group "system" metadata (seqno 10).
Extending logical volume root to 18.82 GB
Creating volume group backup "/etc/lvm/backup/system" (seqno 11).
Found volume group "system"
Found volume group "system"
Loading system-root table
Suspending system-root (253:0)
Found volume group "system"
Resuming system-root (253:0)
Logical volume root successfully resized
tteam01:~ # vgs
VG #PV #LV #SN Attr VSize VFree
system 2 2 0 wz--n- 19.92G 0
Aha, aus unsern ~15GB sind ~20GB geworden. War einfach, nicht? Aber wir sind noch nicht ganz fertig!
Die bestehende Partition vergroessern
Die Root-Partition ist nun aber immer noch auf der alten Groesse, wir haben ja nur das LV vergroessert. Auch das ist kein Problem:
tteam01:~ # ext2online -d /dev/mapper/system-root
[... viel viel Text ...]
tteam01:~ # df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/system-root
19G 4.1G 14G 23% /
udev 377M 136K 376M 1% /dev
/dev/sda1 69M 9.6M 56M 15% /boot
Das wars! Cool, nicht?