Logical Volume Management (LVM)

Anleitung zur Erstellung und Erweiterung von Logical Volume Management (LVM) unter Linux.

Logical Volume Management (LVM) ist eine flexible Methode, um Speicherplatz auf Linux-Systemen zu verwalten. Es ermöglicht die dynamische Anpassung von Speicherplatz, ohne dass Partitionen neu erstellt oder Daten gelöscht werden müssen. Diese Anleitung zeigt, wie man ein neues LVM erstellt, erweitert und dauerhaft einbindet.

LVM erstellen

Physical Volume (PV) erstellen

Ein Physical Volume (PV) ist die Grundlage für LVM. Es repräsentiert eine physische Festplatte oder Partition, die für LVM verwendet werden soll. Um ein PV zu erstellen, führe den folgenden Befehl aus:

1
pvcreate /dev/sdb

Erklärung:

  • /dev/sdb ist die Festplatte, die du für LVM verwenden möchtest. Ersetze sie durch den tatsächlichen Gerätenamen deiner Festplatte.
  • Dieser Schritt markiert die Festplatte als LVM-kompatibel.

Volume Group (VG) erstellen

Eine Volume Group (VG) ist eine Sammlung von Physical Volumes. Sie stellt den Speicherplatz bereit, aus dem Logical Volumes erstellt werden können. Um eine VG zu erstellen und das vorher erstellte PV hinzuzufügen, nutze:

1
vgcreate vg_data /dev/sdb

Erklärung:

  • vg_data ist der Name der Volume Group. Du kannst einen beliebigen Namen wählen.
  • /dev/sdb ist das Physical Volume, das du hinzufügen möchtest.

Logical Volume (LV) erstellen

Ein Logical Volume (LV) ist der tatsächlich nutzbare Speicherplatz, der aus einer Volume Group bereitgestellt wird. Um ein LV zu erstellen, das den gesamten freien Speicherplatz der Volume Group nutzt, führe aus:

1
lvcreate -l 100%FREE -n lv_data vg_data

Erklärung:

  • -l 100%FREE weist dem Logical Volume den gesamten verfügbaren Speicherplatz der Volume Group zu.
  • -n lv_data gibt dem Logical Volume den Namen lv_data.
  • vg_data ist die Volume Group, aus der der Speicherplatz entnommen wird.

Dateisystem erstellen

Um das Logical Volume nutzen zu können, muss ein Dateisystem darauf erstellt werden. In diesem Beispiel wird das ext4-Dateisystem verwendet:

1
mkfs.ext4 /dev/vg_data/lv_data

Erklärung:

  • /dev/vg_data/lv_data ist der Pfad zum Logical Volume.
  • Das Dateisystem ext4 ist eine gängige Wahl für Linux-Systeme, aber du kannst auch andere Dateisysteme wie XFS oder btrfs verwenden.

LVM erweitern

Falls du mehr Speicherplatz benötigst, kannst du ein bestehendes LVM erweitern. Hier sind die Schritte:

Physical Volume (PV) vergrößern

Falls die zugrunde liegende Festplatte erweitert wurde (z. B. durch Hinzufügen von mehr Speicherplatz in einer virtuellen Maschine), musst du das Physical Volume aktualisieren:

1
pvresize /dev/sdb

Erklärung:

  • Dieser Befehl passt die Größe des Physical Volumes an die neue Größe der Festplatte an.

Logical Volume (LV) vergrößern

Um den zusätzlichen Speicherplatz zu nutzen, erweitere das Logical Volume:

1
lvextend -l +100%FREE /dev/vg_data/lv_data

Erklärung:

  • -l +100%FREE erweitert das Logical Volume um den gesamten verfügbaren Speicherplatz in der Volume Group.
  • /dev/vg_data/lv_data ist das Logical Volume, das erweitert wird.

Dateisystem vergrößern

Nach der Erweiterung des Logical Volumes muss das Dateisystem angepasst werden, um den neuen Speicherplatz zu nutzen:

1
resize2fs /dev/mapper/vg_data-lv_data

Erklärung:

  • resize2fs passt die Größe des ext4-Dateisystems an.
  • /dev/mapper/vg_data-lv_data ist der Pfad zum Logical Volume.

Eintrag in /etc/fstab hinzufügen

Damit das Logical Volume beim Systemstart automatisch eingehängt wird, musst du es in die Datei /etc/fstab eintragen.

UUID anzeigen

Finde die UUID des Logical Volumes heraus:

1
lsblk -f

Erklärung:

  • Die UUID ist eine eindeutige Kennung für das Logical Volume. Sie wird benötigt, um das Volume in /etc/fstab einzutragen.

Eintrag in /etc/fstab hinzufügen

Füge die UUID in die Datei /etc/fstab ein, damit das Volume automatisch eingehängt wird:

1
echo "UUID=foo /mnt/data ext4 defaults 0 0" >> /etc/fstab

Erklärung:

  • Ersetze foo durch die tatsächliche UUID des Logical Volumes.
  • /mnt/data ist der Einhängepunkt. Passe diesen an deine Anforderungen an.
  • ext4 ist das Dateisystem, das du verwendet hast.

Systemd neu laden

Lade die Systemd-Konfiguration neu, um die Änderungen zu übernehmen:

1
systemctl daemon-reload

Mount einhängen

Hänge das Volume ein, um sicherzustellen, dass es korrekt funktioniert:

1
mount -a