LFCS: So verwalten und erstellen Sie LVM mit den Befehlen vgcreate, lvcreate und lvextend – Teil 11

Aufgrund der Änderungen in den Anforderungen der LFCS-Prüfung, die ab dem 2. Februar 2016 wirksam sind, fügen wir die erforderlichen Themen zur hier veröffentlichten LFCS-Serie hinzu. Um sich auf diese Prüfung vorzubereiten, wird dringend empfohlen, auch die LFCE-Serie zu nutzen.

LFCS: Manage LVM and Create LVM Partition – Part 11

Eine der wichtigsten Entscheidungen bei der Installation eines Linux-Systems ist die Menge des Speicherplatzes, der für Systemdateien, Benutzerverzeichnisse und andere Bereiche zugewiesen werden soll. Wenn Sie an dieser Stelle einen Fehler machen, kann das Wachsen einer Partition, die keinen freien Speicherplatz mehr hat, mühsam und auch etwas riskant sein.

Das Logical Volume Management (auch bekannt als LVM), das mittlerweile Standard für die Installation der meisten (wenn nicht aller) Linux-Distributionen geworden ist, bietet zahlreiche Vorteile gegenüber der herkömmlichen Partitionsverwaltung. Vielleicht das markanteste Merkmal von LVM ist, dass logische Bereiche nach Belieben vergrößert oder verkleinert werden können, ohne viel Aufwand.

Die Struktur des LVM besteht aus:

  1. Ein oder mehrere gesamte Festplatten oder Partitionen sind als physische Volumes (PVs) konfiguriert.
  2. A volume group (VG) is created using one or more physical volumes. You can think of a volume group as a single storage unit.
  3. In einer Volume Group können dann mehrere logische Volumes erstellt werden. Jedes logische Volume entspricht in etwa einer herkömmlichen Partition, mit dem Vorteil, dass es wie bereits erwähnt nach Belieben vergrößert werden kann.

In diesem Artikel werden wir drei Festplatten mit je 8 GB verwenden, um drei physische Volumes zu erstellen (/dev/sdb, /dev/sdc und /dev/sdd). Manchmal kann man die PVs direkt auf dem Gerät erstellen, manchmal partitioniert man es zuerst.

Obwohl wir die erste Methode gewählt haben, sollten Sie sich bei der zweiten Methode (wie in Teil 4 – Erstellen von Partitionen und Dateisystemen in Linux dieser Reihe beschrieben) sicherstellen, dass jede Partition als Typ 8e konfiguriert wird.

Erstellen von physischen Volumes, Volume Groups und logischen Volumes

Um physische Volumes auf /dev/sdb, /dev/sdc und /dev/sdd zu erstellen, führen Sie die folgenden Schritte aus:

# pvcreate /dev/sdb /dev/sdc /dev/sdd

Sie können die neu erstellten PVs mit:

# pvs

und erhalten detaillierte Informationen über jedes PV mit:

# pvdisplay /dev/sdX

(wobei X b, c oder d ist)

Wenn Sie /dev/sdX als Parameter weglassen, erhalten Sie Informationen über alle PVs.

Um ein Volume Group namens vg00 mit /dev/sdb und /dev/sdc zu erstellen (wir sparen /dev/sdd für später, um die Möglichkeit zu illustrieren, andere Geräte zum Erweitern der Speicherkapazität bei Bedarf hinzuzufügen):

# vgcreate vg00 /dev/sdb /dev/sdc

Wie bei physischen Volumes können Sie auch Informationen über dieses Volume Group mit folgender Befehl erhalten:

# vgdisplay vg00

Da vg00 aus zwei 8 GB -Festplatten besteht, erscheint es als ein einziges 16 GB -Laufwerk:

List LVM Volume Groups

Bei der Erstellung von logischen Volumes muss die Verteilung des Speicherplatzes sowohl aktuelle als auch zukünftige Bedürfnisse berücksichtigen. Es wird als bewährte Praxis angesehen, jedem logischen Volume einen Namen entsprechend seiner beabsichtigten Verwendung zu geben.

Zum Beispiel erstellen wir zwei LVs namens vol_projects (10 GB) und vol_backups (verbleibender Speicherplatz), die wir später für die Speicherung von Projektunterlagen bzw. Systemsicherungen verwenden können.

Die Option -n wird verwendet, um einen Namen für das LV anzugeben, während -L eine feste Größe festlegt und -l (kleines L) verwendet wird, um einen Prozentsatz des verbleibenden Speicherplatzes in der Container-VG anzugeben.

# lvcreate -n vol_projects -L 10G vg00
# lvcreate -n vol_backups -l 100%FREE vg00

Wie zuvor können Sie die Liste der LVs und grundlegende Informationen mit dem Befehl anzeigen:

# lvs

und detaillierte Informationen mit dem Befehl:

# lvdisplay

Um Informationen über ein einzelnes LV anzuzeigen, verwenden Sie lvdisplay mit der VG und dem LV als Parameter, wie folgt:

# lvdisplay vg00/vol_projects
List Logical Volume

Auf dem obigen Bild können wir sehen, dass die LVs als Speichergeräte erstellt wurden (siehe Zeile LV-Pfad). Bevor jedes logische Volume verwendet werden kann, müssen wir ein Dateisystem darauf erstellen.

Wir verwenden hier ext4 als Beispiel, da es uns ermöglicht, die Größe jedes LV zu vergrößern und zu verkleinern (im Gegensatz zu xfs, das nur die Größe erhöhen lässt):

# mkfs.ext4 /dev/vg00/vol_projects
# mkfs.ext4 /dev/vg00/vol_backups

Im nächsten Abschnitt erläutern wir, wie man logische Volumes vergrößert und zusätzlichen physischen Speicherplatz hinzufügt, wenn dies erforderlich ist.

Vergrößern von logischen Volumes und Erweitern von Volume Groups

Stellen Sie sich nun das folgende Szenario vor. Ihnen geht der Platz in vol_backups langsam aus, während Sie in vol_projects noch reichlich Platz haben. Aufgrund der Art von LVM können wir die Größe des letzteren (sagen wir 2,5 GB) problemlos reduzieren und es dem ersteren zuweisen, während wir gleichzeitig das Dateisystem vergrößern.

Zum Glück ist das genauso einfach wie:

# lvreduce -L -2.5G -r /dev/vg00/vol_projects
# lvextend -l +100%FREE -r /dev/vg00/vol_backups
Resize Reduce Logical Volume and Volume Group

Es ist wichtig, das Minuszeichen (-) oder Pluszeichen (+) beim Ändern der Größe eines logischen Volumes einzuschließen. Andernfalls legen Sie eine feste Größe für das LV fest, anstatt es zu ändern.

Es kann vorkommen, dass Sie an einen Punkt gelangen, an dem das Ändern der Größe von logischen Volumes Ihre Speicheranforderungen nicht mehr lösen kann und Sie ein zusätzliches Speichergerät kaufen müssen. Um es einfach zu halten, benötigen Sie eine weitere Festplatte. Wir werden diese Situation simulieren, indem wir das verbleibende PV aus unserer ursprünglichen Einrichtung (/dev/sdd) hinzufügen.

Um /dev/sdd zu vg00 hinzuzufügen, führen Sie folgenden Befehl aus:

# vgextend vg00 /dev/sdd

Wenn Sie den Befehl vgdisplay vg00 vor und nach dem vorherigen Befehl ausführen, sehen Sie die Zunahme der Größe der VG:

# vgdisplay vg00
Check Volume Group Disk Size

Jetzt können Sie den neu hinzugefügten Speicherplatz verwenden, um die vorhandenen LVs nach Ihren Bedürfnissen zu vergrößern oder bei Bedarf zusätzliche LVs zu erstellen.

Einbinden von logischen Volumes beim Start und bei Bedarf

Natürlich macht es keinen Sinn, logische Volumes zu erstellen, wenn wir sie nicht tatsächlich verwenden werden! Um ein logisches Volume besser zu identifizieren, müssen wir seine UUID (ein nicht veränderliches Attribut, das ein formatiertes Speichergerät eindeutig identifiziert) herausfinden.

Um dies zu tun, verwenden Sie blkid gefolgt vom Pfad zu jedem Gerät:

# blkid /dev/vg00/vol_projects
# blkid /dev/vg00/vol_backups
Find Logical Volume UUID

Erstellen Sie Mount-Points für jede LV:

# mkdir /home/projects
# mkdir /home/backups

und fügen Sie die entsprechenden Einträge in /etc/fstab ein (stellen Sie sicher, dass Sie die zuvor erhaltenen UUIDs verwenden):

UUID=b85df913-580f-461c-844f-546d8cde4646 /home/projects	ext4 defaults 0 0
UUID=e1929239-5087-44b1-9396-53e09db6eb9e /home/backups ext4	defaults 0 0

Dann speichern Sie die Änderungen und mounten die LVs:

# mount -a
# mount | grep home
Mount Logical Volumes on Linux

Wenn es darum geht, die LVs tatsächlich zu verwenden, müssen Sie die entsprechenden ugo+rwx Berechtigungen zuweisen, wie in Teil 8 – Benutzer und Gruppen verwalten in Linux dieser Serie erklärt.

Zusammenfassung

In diesem Artikel haben wir das Logical Volume Management vorgestellt, ein vielseitiges Werkzeug zur Verwaltung von Speichergeräten, das Skalierbarkeit bietet. In Kombination mit RAID (das wir in Teil 6 – RAID in Linux erstellen und verwalten dieser Serie erklärt haben) können Sie nicht nur Skalierbarkeit (bereitgestellt von LVM) genießen, sondern auch Redundanz (die von RAID angeboten wird).

In dieser Art von Setup finden Sie typischerweise LVM über RAID, das heißt, konfigurieren Sie zuerst RAID und dann konfigurieren Sie LVM darauf.

Wenn Sie Fragen zu diesem Artikel haben oder Vorschläge zur Verbesserung, zögern Sie nicht, uns über das Kommentarformular unten zu erreichen.

Source:
https://www.tecmint.com/manage-and-create-lvm-parition-using-vgcreate-lvcreate-and-lvextend/