LVM¶
Logical Volume Management
Mit LVM können wir dynamisch Partitionen verwalten/erweitern. Das macht vor Allem die Vergrößerung von Partitionen recht einfach. Für die Umsetzung gibt es diverse Anleitungen und Best Practise.
Ich benutze seit vielen Jahren die Anleitung von Hoster Thomas Krenn. Dessen Wiki finde ich immer wieder passend, solange man nicht die dargestellten Distributionen in den Beispielen aus dem Auge verliert. Aber das gilt natürlich für jede Recherche (siehe Arch Wiki, Ubuntuusers Wiki, Gentoo Wiki, …).
Der Aufbau der Technik basiert auf
Physikalisches Volume:
pv...
Volume Group:
vg...
Logical Volumen:
lv...
Übersicht aus einer Debian-Standard-Installation mit LVM und Partitionen:
root@vm-lpic-router:~# df -hx tmpfs
Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf
udev 942M 0 942M 0% /dev
/dev/mapper/vm--lpic--router--vg-root 23G 887M 21G 5% /
/dev/sda2 471M 49M 398M 11% /boot
/dev/mapper/vm--lpic--router--vg-var 8,0G 383M 7,2G 5% /var
/dev/mapper/vm--lpic--router--vg-tmp 1,4G 44K 1,4G 1% /tmp
/dev/mapper/vm--lpic--router--vg-home 91G 52K 86G 1% /home
/dev/sda1 511M 3,5M 508M 1% /boot/efi
root@vm-lpic-router:~# mount | grep ^/dev
/dev/mapper/vm--lpic--router--vg-root on / type ext4 (rw,relatime,errors=remount-ro)
/dev/sda2 on /boot type ext2 (rw,relatime,stripe=4)
/dev/mapper/vm--lpic--router--vg-var on /var type ext4 (rw,relatime)
/dev/mapper/vm--lpic--router--vg-tmp on /tmp type ext4 (rw,relatime)
/dev/mapper/vm--lpic--router--vg-home on /home type ext4 (rw,relatime)
/dev/sda1 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro)
root@vm-lpic-router:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 127G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 488M 0 part /boot
└─sda3 8:3 0 126G 0 part
├─vm--lpic--router--vg-root 254:0 0 23,3G 0 lvm /
├─vm--lpic--router--vg-var 254:1 0 8,2G 0 lvm /var
├─vm--lpic--router--vg-swap_1 254:2 0 976M 0 lvm [SWAP]
├─vm--lpic--router--vg-tmp 254:3 0 1,4G 0 lvm /tmp
└─vm--lpic--router--vg-home 254:4 0 92,1G 0 lvm /home
sr0 11:0 1 1024M 0 rom
root@vm-lpic-router:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda3 vm-lpic-router-vg lvm2 a-- <126,02g 20,00m
root@vm-lpic-router:~# vgs
VG #PV #LV #SN Attr VSize VFree
vm-lpic-router-vg 1 5 0 wz--n- <126,02g 20,00m
root@vm-lpic-router:~# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home vm-lpic-router-vg -wi-ao---- 92,12g
root vm-lpic-router-vg -wi-ao---- 23,28g
swap_1 vm-lpic-router-vg -wi-ao---- 976,00m
tmp vm-lpic-router-vg -wi-ao---- <1,45g
var vm-lpic-router-vg -wi-ao---- <8,20g
Hier der Link zum TK Wiki LVM vergrößern.
Tipp
Statt df -h
nutzen wir df -hx tmpfs
- das ist übersichtlicher!
Kurzanleitung - Zusammenfassung der Schritte (von der Website)
Vergrößern / Hinzufügen von Festplattenspeicher (auf physikalischer oder virtueller Ebene)
Neustarten der Maschine, damit der zusätzliche Festplattenspeicher erkannt wird
Erstellen einer weiteren Partition z. B. mittels
cfdisk
Partitionstabelle neu Einlesen, z. B. per Reboot oder per Kommando
partprobe
Initialisieren einer neuen PV mittels
pvcreate
Vergrößern der VG mittels
vgextend
Vergrößern des LV mittels
lvextend
(bzw.xfs_growfs
)Vergrößern des Dateisystems z. B. mittels
resize2fs