-
( Minus ) in VG und LV Namen besser vermeiden Dies ist eine alte Version des Dokuments!
Ein LV besteht aus mehreren Ebenen. Die unterste Ebene bilden die sogenannten physical volumes ( PV ).
Mehrere PVs kann man nun zusammenfassen zu einer logischen Einheit, der sogenannten volume group ( VG ).
Auf der VG kann man nun logical volumes ( LV ) erzeugen, die eine beliebige Größe haben können.
In der Summe können die LVs die Größe der VG natürlich nicht überschreiten.
Pakete installieren ( Debian ):
apt install lvm2 parted
LVM-Partition anlegen:
parted /dev/sda print parted /dev/sda set 2 lvm on parted /dev/sda set 3 lvm on
Alte Metadaten löschen:
wipefs -af /dev/sda2 wipefs -af /dev/sda3
Partitionen anzeigen:
fdisk -l | grep -i lvm
in der Ausgabe sollten 2 LVM-Partitionen erscheinen:
/dev/sda2 30212096 59572223 29360128 14G Linux LVM /dev/sda3 59572224 90114190 30541967 14,6G Linux LVM
erstes Physical Volume anlegen:
pvcreate /dev/sda2
Bestehende Physical Volumes anzeigen:
pvs
Volume Group mit Namen vg_system
anlegen:
1)
vgcreate vg_system /dev/sda2
Volume Group aktivieren: (optional)
vgchange -a y vg_system
Bestehende Volume Groups anzeigen:
vgs
Logical Volume mit Namen lv_test
anlegen:
lvcreate --size 5G --name /dev/vg_system/lv_test
Bestehende Logical Volumes anzeigen:
lvs
Formatieren ( hier mit ext4-FilesSystem ):
mkfs.ext4 /dev/vg_system/lv_test
Mount-Point erstellen:
mkdir /mnt/lv_test
logical volume an Mount-Point in Dateisystem einhängen:
mount /dev/vg_system/lv_test /mnt/lv_test
Testweise /usr/bin-Verzeichnis kopieren:
cp -a /usr/bin/. /mnt/lv_test
Der Vorteil eines LV ist, daß es zur Laufzeit vergrößert werden kann. Ein LV kann auch verkleinert werden, dass geht aber nur bei ext4 und auch da nur nach umount.
lvresize --size +1g --resizefs /dev/vg_system/lv_test
oder
lvextend -L +2g /dev/vg_system/lv_test
Dateisystem vergrößern:
resize2fs /dev/vg_system/lv_test
xfs_growfs /mnt/lv_test
lvcreate --snapshot --size 100M --name lv_snapshot1 /dev/vg_system/lv_test mkdir /mnt/snapshot1 mount -o ro /dev/vg_system/lv_snapshot1 /mnt/snapshot1
wie jedes lv
umount /mnt/snapshot1 lvremove /dev/vg_system/lv_snapshot1
zweites Physical Volume anlegen:
pvcreate /dev/sda3 vgextend vg_system /dev/sda3
pvmove /dev/sda2 vgreduce vg_system /dev/sda2 pvremove /dev/sda2
Falls man vergessen hat das LVM in die Fstab einzutragen, sind diese nach einem Neustart verschwunden.
lvdisplay
listet die LVMs dann als „LV Status NOT available“ auf.
Lösung: Vgs von Hand aktivieren:
lvchange -a y vg_system
Es kann praktisch sein, die extent size zu ändern, z.B. um sie passend für ein RAID-stripe set zu machen
vgchange -s 1m vgs -v
-
( Minus ) in VG und LV Namen besser vermeiden modprobe dm-snapshot
mount -o ro,nouuid /dev/vg_system/lv_snapshot /mnt/snapshot1oder (falls es ohne
norecovery
nicht geht)mount -o ro,nouuid,norecovery /dev/vg_system/lv_snapshot /mnt/snapshot1