-
( Minus ) in VG und LV Namen besser vermeiden
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.
Debian:
apt install lvm2 parted
openSuSE:
zypper install lvm
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 Daten aus /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.
(geht nicht bei btrfs)
lvresize --size +1g --resizefs /dev/vg_system/lv_test
lvextend -L +2g /dev/vg_system/lv_test
Dateisystem vergrößern:
resize2fs /dev/vg_system/lv_test
xfs_growfs /mnt/lv_test
(Volume muss nach /mnt/lv_test
gemountet sein)
btrfs filesystem resize max /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
lvconvert --merge /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
zweites Physical Volume anlegen:
pvcreate /dev/sda2 vgextend vg_system /dev/sda2
Logical Volume zu RAID 1 konvertieren:
lvconvert --type raid1 /dev/vg_system/lv_test journalctl -kf
(warten bis „recovery done“ erscheint)
Debian: Kernel Modul noch nicht mainline und nicht in Debian stable
-
( Minus ) in VG und LV Namen besser vermeiden modprobe dm-snapshot
uuid xfs_admin -U 97194112-5d40-11ee-9311-a7af42c4cc96 /dev/vgsystem/lvtest1oder Mount-Option
nouuid
(ohne Änderung am 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
lvconvert --raidintegrity y /dev/vg_system/lv_test blkdiscard /dev/sda6