Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung | |||
lpi1:lvm [2024/03/19 10:37] ingo_wichmann |
lpi1:lvm [2025/07/17 07:56] (aktuell) |
||
---|---|---|---|
Zeile 15: | Zeile 15: | ||
===== Partitionierung ===== | ===== Partitionierung ===== | ||
- | LVM-Partition anlegen: | + | Partition mit Typ LVM anlegen: |
parted /dev/sda print | parted /dev/sda print | ||
parted /dev/sda set 2 lvm on | parted /dev/sda set 2 lvm on | ||
Zeile 33: | Zeile 33: | ||
====== LV anlegen ====== | ====== LV anlegen ====== | ||
- | erstes Physical Volume anlegen: | + | LVM-Blockdevice zum Physical Volume machen: |
pvcreate /dev/sda2 | pvcreate /dev/sda2 | ||
- | Bestehende Physical Volumes anzeigen: | + | Bestehende Physical Volumes anzeigen: (( oder ausführlicher mit |
+ | pvdisplay | ||
+ | )) | ||
pvs | pvs | ||
Zeile 46: | Zeile 48: | ||
vgchange -a y vg_system | vgchange -a y vg_system | ||
- | Bestehende Volume Groups anzeigen: | + | Bestehende Volume Groups anzeigen: (( oder ausführlicher mit |
+ | vgdisplay | ||
+ | )) | ||
vgs | vgs | ||
Zeile 52: | Zeile 56: | ||
lvcreate --size 5G --name /dev/vg_system/lv_test | lvcreate --size 5G --name /dev/vg_system/lv_test | ||
- | Bestehende Logical Volumes anzeigen: | + | Bestehende Logical Volumes anzeigen: (( oder ausführlicher mit |
+ | lvdisplay | ||
+ | )) | ||
lvs | lvs | ||
Zeile 59: | Zeile 65: | ||
=== Testen === | === Testen === | ||
- | Mountpoint erstellen: | ||
- | mkdir /mnt/lv_test | ||
- | |||
Logical Volume am Mountpoint einhängen: | Logical Volume am Mountpoint einhängen: | ||
- | mount /dev/vg_system/lv_test /mnt/lv_test | + | mount -m /dev/vg_system/lv_test /mnt/lv_test |
Testweise Daten aus ''/usr/bin''-Verzeichnis kopieren: | Testweise Daten aus ''/usr/bin''-Verzeichnis kopieren: | ||
cp -a /usr/bin/. /mnt/lv_test | cp -a /usr/bin/. /mnt/lv_test | ||
+ | df -h /mnt/lv_test | ||
====== LV vergrößern ====== | ====== LV vergrößern ====== | ||
Zeile 75: | Zeile 79: | ||
(geht nicht bei btrfs) | (geht nicht bei btrfs) | ||
lvresize --size +2g --resizefs /dev/vg_system/lv_test | lvresize --size +2g --resizefs /dev/vg_system/lv_test | ||
+ | df -h /mnt/lv_test | ||
==== Volume und Dateisystem in zwei Schritten ==== | ==== Volume und Dateisystem in zwei Schritten ==== | ||
++++ Volume und Dateisystem in zwei Schritten | | ++++ Volume und Dateisystem in zwei Schritten | | ||
Zeile 100: | Zeile 104: | ||
df -hT . lv_test | df -hT . lv_test | ||
Backup erstellen: | Backup erstellen: | ||
- | tar -cf lv_test.tar.zstd --use-comp zstd lv_test/ | + | tar -caf lv_test.tar.zst lv_test/ |
ext4-Dateisystem aushängen & prüfen: | ext4-Dateisystem aushängen & prüfen: | ||
umount /mnt/lv_test | umount /mnt/lv_test | ||
fsck.ext4 -f /dev/mapper/vg_system-lv_test | fsck.ext4 -f /dev/mapper/vg_system-lv_test | ||
- | ext4-Dateisystem verkleinern: | + | (( ext4-Dateisystem verkleinern: |
resize2fs /dev/mapper/vg_system-lv_test 3G | resize2fs /dev/mapper/vg_system-lv_test 3G | ||
- | LV verkleinern: | + | )) |
- | lvreduce --size 3G /dev/mapper/vg_system-lv_test | + | ext4-Dateisystem und LV verkleinern: |
+ | lvreduce --size 3G --resizefs /dev/mapper/vg_system-lv_test | ||
Dateisystem wieder einhängen: | Dateisystem wieder einhängen: | ||
mount /dev/mapper/vg_system-lv_test /mnt/lv_test | mount /dev/mapper/vg_system-lv_test /mnt/lv_test | ||
Zeile 120: | Zeile 125: | ||
==== Snapshot erstellen ==== | ==== Snapshot erstellen ==== | ||
- | lvcreate --snapshot --size 200M --name lv_snapshot1 /dev/vg_system/lv_test | + | lvcreate --snapshot --extents 10%ORIGIN --name lv_snapshot1 /dev/vg_system/lv_test |
- | mkdir /mnt/snapshot1 | + | mount -m -o ro,noatime /dev/vg_system/lv_snapshot1 /mnt/snapshot1 |
- | mount -o ro,noatime /dev/vg_system/lv_snapshot1 /mnt/snapshot1 | + | |
(( bei XFS | (( bei XFS | ||
UUID vor dem Mounten anpassen: (verändert den Snapshot) | UUID vor dem Mounten anpassen: (verändert den Snapshot) | ||
Zeile 141: | Zeile 145: | ||
++++ Snapshot erstellen & wiederherstellen | | ++++ Snapshot erstellen & wiederherstellen | | ||
==== Snapshot erstellen ==== | ==== Snapshot erstellen ==== | ||
- | lvcreate --snapshot --size 200M --name lv_snapshot2 /dev/vg_system/lv_test | + | lvcreate --snapshot --extents 10%ORIGIN --name lv_snapshot2 /dev/vg_system/lv_test |
==== Daten im Original LV ändern/löschen ==== | ==== Daten im Original LV ändern/löschen ==== | ||
rm -rf /mnt/lv_test/s* | rm -rf /mnt/lv_test/s* | ||
Zeile 158: | Zeile 162: | ||
Prüfen, ob Dateien wieder da sind: | Prüfen, ob Dateien wieder da sind: | ||
ls /mnt/lv_test/s* | ls /mnt/lv_test/s* | ||
+ | ++++ | ||
+ | ====== Speicherplatz überbuchen mit Thinpool ====== | ||
+ | ++++ Speicherplatz überbuchen mit Thinpool | | ||
+ | ===== Speicherplatz für Thinpool reservieren ===== | ||
+ | lvcreate --thinpool thinpool --size 100G vg_system | ||
+ | Prüfen: | ||
+ | lvs | ||
+ | lvdisplay /dev/vg_system/thinpool | ||
+ | ===== thin LV anlegen ===== | ||
+ | lvcreate --thin --virtualsize 10T --name my_thin_lv --thinpool thinpool vg_system | ||
+ | -> Meldungen lesen | ||
+ | mkfs.ext4 /dev/mapper/vg_system-my_thin_lv | ||
+ | mount -m /dev/mapper/abi--vg-my_thin_lv /mnt/thin_air | ||
+ | df -h /mnt/thin_air | ||
++++ | ++++ | ||
====== Physical Volume entfernen ====== | ====== Physical Volume entfernen ====== | ||
Zeile 167: | Zeile 185: | ||
vgreduce vg_system /dev/sda2 | vgreduce vg_system /dev/sda2 | ||
pvremove /dev/sda2 | pvremove /dev/sda2 | ||
+ | wipefs -af /dev/sda2 | ||
+ | |||
====== Logical Volume spiegeln (RAID 1) ====== | ====== Logical Volume spiegeln (RAID 1) ====== |