Website-Suche

Wie man einen Festplattenspeicher mit LVM unter Linux erstellt - Teil 1


Logical Volume Management (LVM) ist ein leistungsstarkes Tool, das die Speicherplatzverwaltung erheblich vereinfacht. Mit LVM wird die Aufgabe, einem Dateisystem zusätzlichen Speicherplatz zuzuweisen, mühelos.

Wann immer ein Dateisystem mehr Speicherplatz benötigt, kann es problemlos auf den verfügbaren freien Speicherplatz in der entsprechenden Datenträgergruppe zurückgreifen. Infolgedessen können Dateisysteme dynamisch in der Größe angepasst werden, um unseren spezifischen Anforderungen gerecht zu werden.

Darüber hinaus bietet LVM einen robusten Datenschutz bei Festplattenausfällen. Wenn eine Festplatte Anzeichen eines Ausfalls zeigt, können wir eine Ersatzfestplatte nahtlos als neues physisches Volume in die Volume-Gruppe integrieren.

Auf diese Weise können die logischen Volumes effizient auf die neue Festplatte migriert werden, was die Kontinuität gewährleistet und vor potenziellem Datenverlust schützt.

Im Wesentlichen ermöglicht LVM Administratoren, die Zuweisung und Verwaltung von Speicherplatz mit beispielloser Flexibilität und Ausfallsicherheit zu handhaben. Seine dynamischen Größenänderungsfunktionen und integrierten Redundanzfunktionen machen es zu einem unverzichtbaren Asset für die Optimierung der Speichernutzung und die Verbesserung der Datenintegrität in jeder Systemkonfiguration.

Wir stellen die umfassende Serie "Vorbereitung auf die Einrichtung von LVM (Logical Volume Management)" vor, die in den Teilen 1 bis 6 sorgfältig gestaltet wurde und eine eingehende Untersuchung der folgenden wesentlichen Themen enthält:

Bevor Sie mit der LVM-Einrichtung fortfahren, sollten Sie die folgenden Voraussetzungen berücksichtigen:

My Server Setup – Anforderungen
  • Betriebssystem – RHEL 9 mit LVM-Installation
  • IP – 192.168.0.200
  • Festplatten – 3 Festplatten mit jeweils 20 GB.

Überprüfen Sie den LVM-Festplattenspeicher unter Linux

1. Um einen Einblick in unser LVM-Setup zu erhalten, können wir die folgenden Befehle verwenden, um die verschiedenen Komponenten aufzudecken: Physisches Volume (PV), Volume-Gruppe (VG) und logisches Volume (LV).

# pvs 
vgs
lvs

Hier ist die Beschreibung der einzelnen Parameter, die im obigen Screenshot gezeigt werden.

  • Größe der physischen Festplatte (PV-Größe)
  • Bei dem verwendeten Datenträger handelte es sich um den virtuellen Datenträger sda.
  • Größe der Volume-Gruppe (VG-Größe)
  • Name der Volume-Gruppe (vg_tecmint)
  • Name des logischen Volumes (LogVol00, LogVol01)
  • LogVol00 Zugewiesen für einen Swap mit einer Größe von 956 MB
  • LogVol01 Zugewiesen für/mit 18.63GB

Von hier aus erfahren wir, dass auf der VDA-Festplatte nicht genügend freier Speicherplatz vorhanden ist.

Erstellen einer neuen Datenträgergruppe in LVM

2. Um eine neue Volume-Gruppe zu erstellen, müssen wir diesem Server weitere 3 Festplatten hinzufügen. Es ist jedoch nicht zwingend erforderlich, 3 Laufwerke zu verwenden. nur 1 reicht aus, um eine neue VG und LV (Logical Volume) in dieser VG zu erstellen.

Ich füge hier die folgenden 3 Disketten zu Demonstrationszwecken hinzu und um weitere Erklärungen zu Funktionsbefehlen zu geben.

sdb, sdc, sdd

3. Um alle Festplatten und ihre Partitionen aufzulisten, wie z. B. den Festplattennamen, die Größe, den Partitionstyp, die Start- und Endsektoren und mehr, verwenden Sie das Dienstprogramm fdisk, wie gezeigt.

# fdisk -l

Hier ist die Beschreibung der einzelnen Festplatten, die im obigen Screenshot gezeigt werden.

  • Der für das Betriebssystem verwendete Standarddatenträger ist RHEL 9.
  • Auf der Standardfestplatte sind folgende Partitionen definiert: (sda1=boot), (sda2=/).
  • Darüber hinaus werden hinzugefügte Festplatten als Disk1, Disk2 und Disk3 angegeben.

Jeder einzelne Datenträger ist 20 GB groß.

4. Führen Sie nun den Befehl vgdisplay aus, um die detaillierten Informationen zu allen auf dem System vorhandenen Volume-Gruppen anzuzeigen, einschließlich Name, Größe, freiem Speicherplatz, Informationen zum physischen Volume (PV) und mehr.

# vgdisplay

Hier ist die Beschreibung der einzelnen Parameter, die im obigen Screenshot gezeigt werden.

  • VG Name – Ein Name einer Volume-Gruppe.
  • Format – LVM-Architektur verwendet lvm2.
  • VG Access – Die Volume-Gruppe befindet sich im Lese- und Schreibmodus und kann verwendet werden.
  • VG Status – Die Größe der Volume-Gruppe kann geändert werden. Wir können es erweitern, wenn wir mehr Platz hinzufügen müssen.
  • Cur LV – Derzeit gibt es 2 logische Volumes in dieser Volume-Gruppe.
  • CurPV und Act PV – Derzeit wird die physische Festplatte verwendet, die 1 (vda) ist und aktiv ist. Wir können also diese Volume-Gruppe verwenden.
  • PE-Größe – Physische Blöcke (PEs) und die Größe für einen Datenträger können entweder mit der PE- oder der GB-Größe definiert werden. Die Standard-PE-Größe von LVM beträgt 4 MB. Wenn wir beispielsweise ein logisches Volume mit 5 GB erstellen müssen, können wir eine Summe von 1280 PEs verwenden. Verstehst du, was ich meine?

Hier ist die Erklärung: 1 GB entspricht 1024 MB, also 1024 MB x 5=5120 PE=5 GB. Teilen Sie nun 5120 durch 4=1280. 4 ist die Standard-PE-Größe.

  • Gesamt-PE – Diese Volumengruppe hat.
  • Alloc PE – Gesamtes verwendetes PE, vollständiges PE bereits verwendet, 5008 x 4PE=20032.
  • Kostenloses PE – Hier wird es bereits verwendet, also gab es kein kostenloses PE.

5. Listen Sie nun die Speicherplatzinformationen des Dateisystems auf, hier wird nur sda mit /boot, / und swap auf der physischen sda-Festplatte mit LVM verwendet. Auf diesem Datenträger ist kein Speicherplatz mehr vorhanden.

# df -TH

Das obige Bild zeigt den Mount-Punkt, den wir verwenden, und die 19 GB werden vollständig für den Root verwendet, sodass kein freier Speicherplatz verfügbar ist.

Erstellen einer Festplattenpartition

6. Erstellen wir also ein neues physisches Volume (PV) und eine neue Volume-Gruppe (VG) mit dem Namen tecmint_add_vg und erstellen darin logische Volumes (LVs). Hier können wir 4 logische Volumes mit den Namen tecmint_documents, tecmint_manager und tecmint_public erstellen.

Wir können die Volume-Gruppe der aktuell verwendeten VG erweitern, um mehr Speicherplatz zu erhalten. In diesem Fall erstellen wir jedoch eine neue Volume-Gruppe und experimentieren damit. Später können wir sehen, wie die Dateisysteme der Volume-Gruppe, die derzeit verwendet wird, erweitert werden können.

Bevor wir eine neue Festplatte verwenden, müssen wir die Festplatte mit dem Befehl fdisk partitionieren, wie gezeigt.

# fdisk -c /dev/sdb

Führen Sie als Nächstes die folgenden Schritte aus, um eine neue Partition zu erstellen.

  • Wählen Sie n aus, um ein neues zu erstellen.
  • Wählen Sie p aus, um eine primäre Partition zu erstellen.
  • Wählen Sie aus, wie viele Partitionen erstellt werden sollen.
  • Drücken Sie zweimal die Eingabetaste, um den gesamten Speicherplatz der Festplatte zu nutzen.
  • Wir müssen den Typ der neu erstellten Partition Typ t ändern.
  • Welche Anzahl der Partitionen muss geändert werden, wählen Sie die Nummer, die wir erstellt haben 1.
  • Hier müssen wir den Typ ändern, wir müssen LVM erstellen, also werden wir den Typcode von LVM als 8e verwenden, wenn wir den Typcode nicht kennen, drücken Sie L, um alle Arten von Codes aufzulisten.
  • Drucken Sie die Partition, die wir erstellt haben, nur zur Bestätigung.
  • Hier sehen wir die ID als 8e LINUX LVM.
  • Schreiben Sie die Änderungen und beenden Sie die fdisk.

7. Führen Sie die obigen Schritte für die anderen 2 Festplatten sdc und sdd aus, um neue Partitionen zu erstellen. Starten Sie dann den Computer neu, um die Partitionstabelle mit dem Befehl fdisk zu überprüfen.

# fdisk -l

Physisches LVM-Volume erstellen

8. Jetzt ist es an der Zeit, physische Volumes mit allen 3 Festplatten zu erstellen. Hier habe ich die physischen Festplatten mit dem Befehl 'pvs' aufgelistet, und jetzt ist nur noch ein Standard-PV aufgeführt.

# pvs

9. Erstellen Sie dann die neuen physischen Festplatten und bestätigen Sie die neu erstellten physischen Festplatten.

# pvcreate /dev/sdb1 /dev/sdc1 /dev/sdd1
pvs

Erstellen von LVM-Volume-Gruppen

10. Erstellen Sie eine Volume-Gruppe mit dem Namen tecmint_add_vg unter Verwendung des verfügbaren freien PV und einer PE-Größe von 32. Um die aktuellen Volume-Gruppen anzuzeigen, können wir sehen, dass eine Volume-Gruppe mit 1 PV verwendet wird.

# vgs

11. Dadurch wird die Volume-Gruppe mit dem Namen tecmint_add_vg mit einer PE-Größe von 32 MB und den 3 physischen Volumes erstellt, die wir in den letzten Schritten erstellt haben.

# vgcreate -s 32M tecmint_add_vg /dev/sdb1 /dev/sdc1 /dev/sdd1

12. Überprüfen Sie als Nächstes die Volume-Gruppe, indem Sie den Befehl vgs erneut ausführen.

# vgs

Verstehen der vgs-Befehlsausgabe:

  • Name der Volume-Gruppe.
  • Physische Volumes, die in dieser Volume-Gruppe verwendet werden.
  • Zeigt den freien Speicherplatz an, der in dieser Volume-Gruppe verfügbar ist.
  • Gesamtgröße der Volume-Gruppe.
  • Logische Volumes innerhalb dieser Volume-Gruppe, hier haben wir noch nicht erstellt, also gibt es 0.
  • SN=Anzahl der Snapshots, die die Volume-Gruppe enthält. (Später können wir einen Snapshot erstellen).
  • Status der Volume-Gruppe als Writeable, readable, resizeable, exported, partial und clustered. Hier ist es wz–n-, d. h. w=beschreibbar, z=veränderbar.
  • Anzahl der physischen Datenträger (PV), die in dieser Datenträgergruppe verwendet werden.

13. Um weitere Informationen über die Volume-Gruppe anzuzeigen, verwenden Sie den Befehl.

# vgs -v

14. Um weitere Informationen zu neu erstellten Volume-Gruppen zu erhalten, führen Sie den folgenden Befehl aus.

# vgdisplay tecmint_add_vg

Hier ist die Beschreibung der einzelnen Parameter, die im obigen Screenshot gezeigt werden.

  • Name der Volume-Gruppe
  • LVM-Architektur verwendet.
  • Es kann im Lese- und Schreibzustand sein und ist sofort einsatzbereit.
  • Die Größe dieser Volume-Gruppe kann geändert werden.
  • Es wurde kein physischer Datenträger verwendet, und er ist aktiv.
  • Gesamtgröße der Volume-Gruppe.
  • Eine einzelne PE-Größe war hier 32.
  • Gesamtanzahl der in dieser Volume-Gruppe verfügbaren PEs.
  • Derzeit haben wir keine LV in dieser VG erstellt, so dass sie völlig kostenlos ist.
  • UUID dieser Datenträgergruppe.

Erstellen von logischen LVM-Datenträgern

15. Erstellen Sie nun 3 logische Volumes mit den Namen tecmint_documents, tecmint_manager und tecmint_public. Hier zeigen wir, wie Sie logische Volumes sowohl mit der PE-Größe als auch mit der GB-Größe erstellen.

Listen Sie zunächst die aktuellen logischen Volumes mit dem folgenden Befehl auf.

# lvs

16. Diese logischen Volumes befinden sich in der vg_tecmint Volume-Gruppe. Um zu sehen, wie viel freier Speicherplatz zum Erstellen logischer Volumes verfügbar ist, listen Sie die Volume-Gruppe und die verfügbaren physischen Volumes mit dem Befehl 'vgs' auf.

# vgs

Die Größe der Volume-Gruppe beträgt fast 60 GB und wird nicht verwendet, sodass wir darin LVs erstellen können. Teilen wir die Volume-Gruppe in gleiche Größen auf, um 3 logische Volumes zu erstellen. Das bedeutet: 60GB/3=20GB. Jedes logische Volume ist nach der Erstellung 20 GB groß.

Methode 1: Erstellen logischer Volumes mit PE Size

Zuerst erstellen wir logische Volumes mit der Größe der physischen Ausdehnung (PE). Wir müssen die Standard-PE-Größe kennen, die dieser Volume-Gruppe zugewiesen ist, und die insgesamt verfügbaren PEs, um neue logische Volumes zu erstellen.

Führen Sie den folgenden Befehl aus, um diese Informationen abzurufen.

# vgdisplay tecmint_add_vg

  • Die für diese VG zugewiesene Standard-PE beträgt 32 MB, hier beträgt die Größe der einzelnen PE 32 MB.
  • Das gesamte verfügbare PE beträgt 1917.

Machen Sie einfach und sehen Sie sich eine kleine Berechnung mit dem bc-Befehl an.

# bc
1917PE/3 = 639 PE. 
639 PE x 32MB = 20448 --> 20GB

Drücken Sie STRG+D, um bc zu beenden.

Lassen Sie uns nun 3 logische Volumes mit 639 PEs erstellen. Hier wird -l verwendet, um die Größe zu erweitern, und -n, um einen logischen Volume-Namen zuzuweisen.

# lvcreate -l 639 -n tecmint_documents tecmint_add_vg
lvcreate -l 639 -n tecmint_manager tecmint_add_vg
lvcreate -l 639 -n tecmint_public tecmint_add_vg

Listen Sie die erstellten logischen Volumes mit dem Befehl lvs auf.

# lvs

Methode 2: Erstellen logischer Volumes mit der GB-Größe

Beim Erstellen eines logischen Volumes mit der GB-Größe können wir die genaue Größe nicht ermitteln. Der bessere Weg ist also, mit extend zu erstellen.

# lvcreate -L 20G -n tecmint_documents tecmint_add_vg
lvcreate -L 20G -n tecmint_manager tecmint_add_vg
lvcreate -L 20G -n tecmint_public tecmint_add_vg
lvcreate -L 20G -n tecmint_public tecmint_add_vg

Listen Sie die mit dem Befehl lvs erstellten logischen Volumes auf.

# lvs

Hier können wir sehen, dass wir beim Erstellen des 3. LV nicht auf 20 GB aufrunden können, es liegt an kleinen Größenänderungen, aber dieses Problem wird beim Erstellen von LV mit Extend size ignoriert.

Dateisystem erstellen

17. Um die logischen Volumes zu verwenden, müssen wir formatieren. Hier verwende ich das ext4-Dateisystem, um die Volumes zu erstellen und sie unter /mnt/ zu mounten.

# mkfs.ext4 /dev/tecmint_add_vg/tecmint_documents
mkfs.ext4 /dev/tecmint_add_vg/tecmint_public
mkfs.ext4 /dev/tecmint_add_vg/tecmint_manager

18. Erstellen wir Verzeichnisse in /mnt und mounten wir die logischen Volumes, die wir als Dateisystem erstellt haben.

# mount /dev/tecmint_add_vg/tecmint_documents /mnt/tecmint_documents/
mount /dev/tecmint_add_vg/tecmint_public /mnt/tecmint_public/
mount /dev/tecmint_add_vg/tecmint_manager /mnt/tecmint_manager/

19. Listen Sie den Einhängepunkt auf und bestätigen Sie ihn mit.

 
df -h

Dauerhaftes Mounten von logischen Volumes

20. Es ist jetzt temporär gemountet, für das permanente Mount müssen wir den Eintrag in fstab hinzufügen, dazu holen wir uns den mount-Eintrag von mtab mit

# cat /etc/mtab

21. Wir müssen beim Eingeben des Inhaltskopien des mount-Eintrags von mtab geringfügige Änderungen im fstab-Eintrag vornehmen, wir müssen das rw auf default ändern

# vi /etc/fstab

Unsere fstab-Einträge sollten ähnlich wie im folgenden Beispiel aussehen.

/dev/mapper/tecmint_add_vg-tecmint_documents    /mnt/tecmint_documents  ext4    defaults 0 0
/dev/mapper/tecmint_add_vg-tecmint_public       /mnt/tecmint_public     ext4    defaults 0 0
/dev/mapper/tecmint_add_vg-tecmint_manager      /mnt/tecmint_manager    ext4    defaults 0 0

22. Führen Sie abschließend den Befehl mount -a aus, um vor dem Neustart nach dem fstab-Eintrag zu suchen.

# mount -av

Hier haben wir gesehen, wie Sie flexiblen Speicher mit logischen Volumes einrichten, indem Sie physische Festplatten auf physisches Volumes, physische Volumes auf die Volume-Gruppe und Volume-Gruppen auf logische Volumes verwenden.

In meinen kommenden Artikeln werde ich sehen, wie Sie die Datenträgergruppe und logische Datenträger erweitern, logische Datenträger reduzieren, Momentaufnahmen erstellen und aus Momentaufnahmen wiederherstellen. Bis dahin bleiben Sie bei TecMint auf dem Laufenden, um weitere solcher großartigen Artikel zu erhalten.

Verwandte Artikel: