Vergrößern eine Partition mit LVM
Leider kommt es bei VMs immer wieder vor, dass die Festplatte im laufenden Betrieb vergrößert werden muss. Im folgenden Beispiel habe ich eine LVM Partition im laufenden Betrieb vergrößert. Bitte achtet darauf, dass ihr Backups von euren Systemen habt.
Zunächst habe ich die Partition vergrößern müssen:
fdisk /dev/vda
Welcome to fdisk (util-linux 2.29.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/vda: 135 GiB, 144950685696 bytes, 283106808 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xec02ef62
Device Boot Start End Sectors Size Id Type
/dev/vda1 * 2048 585727 583680 285M 83 Linux
/dev/vda2 585728 33552383 32966656 15.7G 8e Linux LVM
Dafür habe ich die Partien gelöscht:
Command (m for help): d
Partition number (1,2, default 2): 2
Partition 2 has been deleted.
Anschließend habe ich eine neue Partition angelegt:
Command (m for help): n
Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2):
First sector (585728-283106807, default 585728):
Last sector, +sectors or +size{K,M,G,T,P} (585728-283106807, default 283106807):
Created a new partition 2 of type 'Linux' and of size 134.7 GiB.
Partition #2 contains a LVM2_member signature.
Do you want to remove the signature? [Y]es/[N]o: n
Achtung: hier unbedingt N für no angeben. Wir wollen die Daten ja nicht löschen.
Den Typen der Partition wieder richtig angeben:
Command (m for help): t
Partition number (1,2, default 2):
Partition type (type L to list all types): 8e
Changed type of partition 'Linux' to 'Linux LVM'.
Mit p noch einmal überprüfen:
Command (m for help): p
Disk /dev/vda: 135 GiB, 144950685696 bytes, 283106808 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xec02ef62
Device Boot Start End Sectors Size Id Type
/dev/vda1 * 2048 585727 583680 285M 83 Linux
/dev/vda2 585728 283106807 282521080 134.7G 8e Linux LVM
Wenn man sich sicher ist das alles richtig angegeben wurde kann man die Partition mit w Speicher:
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy
The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8).
Jetzt triggern wir den Kernel, dass er die neue Partitionstabelle erkennt:
apt install partprobe
...
partprobe /dev/vda
Anschließend vergrößern wir das PV und dann das VG:
Das PV (Physical Volumes):
pvresize /dev/vda2
Physical volume "/dev/vda2" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
Die VG (Volumen Gruppe):
vgextend VolGroup1
Command failed with status code 5.
Und zum Abschluss noch einmal prüfen, ob alles geht:
vgs
VG #PV #LV #SN Attr VSize VFree
VolGroup1 1 3 0 wz--n- 134.71g 121.36g