GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Speicher mit LVM hinzufügen

Logical Volume Manager (LVM) ermöglicht eine Abstraktionsschicht zwischen dem Betriebssystem und der Hardware. Normalerweise sucht Ihr Betriebssystem nach Datenträgern (/dev/sda/dev/sdb , usw.) und Partitionen innerhalb dieser Festplatten (/dev/sda1/dev/sdb1 , usw.).

In LVM wird eine virtuelle Schicht zwischen dem Betriebssystem und den Festplatten erstellt. Anstelle eines Laufwerks, das eine Reihe von Partitionen enthält, erstellt LVM einen einheitlichen Speicherpool (eine so genannte Volume Group). ), die sich über eine beliebige Anzahl physischer Laufwerke (als Physical Volumes bezeichnet) erstreckt ). Unter Verwendung des in einer Volumengruppe verfügbaren Speichers stellt LVM scheinbar Festplatten und Partitionen für Ihr Betriebssystem bereit.

Und das Betriebssystem weiß überhaupt nicht, dass es "ausgetrickst" wird.

Da der LVM Volume-Gruppen und logische Volumes virtuell erstellt, ist es einfach, die Größe zu ändern oder zu verschieben oder neue Volumes zu erstellen, selbst während das System läuft. Darüber hinaus bietet LVM Funktionen, die sonst nicht vorhanden sind, wie das Erstellen von Live-Snapshots von logischen Volumes, ohne die Festplatte zuerst abzumelden.

Eine Datenträgergruppe in einem LVM ist ein benannter virtueller Container, der die zugrunde liegenden physischen Festplatten zusammenfasst. Es fungiert als Pool, aus dem logische Volumes unterschiedlicher Größe erstellt werden können. Logische Volumes enthalten das eigentliche Dateisystem und können sich über mehrere Festplatten erstrecken und müssen nicht physisch zusammenhängend sein.

Weitere Linux-Ressourcen

  • Spickzettel für Linux-Befehle
  • Spickzettel für fortgeschrittene Linux-Befehle
  • Kostenloser Online-Kurs:RHEL Technical Overview
  • Spickzettel für Linux-Netzwerke
  • SELinux-Spickzettel
  • Spickzettel für allgemeine Linux-Befehle
  • Was sind Linux-Container?
  • Unsere neuesten Linux-Artikel

Funktionen

  • Partitionsnamen haben normalerweise Systembezeichnungen wie /dev/sda1 . LVM-Volumes haben normale, für Menschen verständliche Namen, wie home oder media .
  • Die Gesamtgröße von Partitionen ist durch die Größe der zugrunde liegenden physischen Festplatte begrenzt. In LVM können Volumes mehrere Laufwerke umfassen und sind nur durch die Gesamtgröße aller physischen Laufwerke im LVM begrenzt.
  • Partitionen können normalerweise nur dann in der Größe geändert, verschoben oder gelöscht werden, wenn die Festplatte nicht verwendet wird und ausgehängt ist. LVM-Volumes können manipuliert werden, während das System läuft.
  • Partitionen können nur erweitert werden, indem ihnen freier Speicherplatz neben der Partition zugewiesen wird. LVM-Volumes können freien Speicherplatz von überall nehmen.
  • Das Erweitern einer Partition beinhaltet das Verschieben der Daten, um freien Speicherplatz zu schaffen, was zeitaufwändig ist und bei einem Stromausfall zu Datenverlust führen kann. LVM-Volumes können freien Speicherplatz von überall in der Volume-Gruppe beanspruchen, sogar auf einer anderen Festplatte.
  • Da es so einfach ist, Volumes in einem LVM zu erstellen, empfiehlt es sich, verschiedene Volumes zu erstellen, wie z. B. das Erstellen separater Volumes, um Funktionen zu testen oder verschiedene Betriebssysteme auszuprobieren. Bei Partitionen wäre dieser Vorgang zeitaufwändig und fehleranfällig.
  • Schnappschüsse können nur in einem LVM erstellt werden. Es ermöglicht Ihnen, ein Point-in-Time-Image des aktuellen logischen Volumes zu erstellen, sogar während das System läuft. Das ist großartig für Backups.

Testaufbau

Gehen Sie zu Demonstrationszwecken davon aus, dass Ihr System die folgende Laufwerkskonfiguration hat:

NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0   8G  0 disk
`-xvda1 202:1    0   8G  0 part /
xvdb    202:16   0   1G  0 disk
xvdc    202:32   0   1G  0 disk
xvdd    202:48   0   2G  0 disk
xvde    202:64   0   5G  0 disk
xvdf    202:80   0   8G  0 disk

Schritt 1. Initialisieren Sie Festplatten zur Verwendung mit LVM

Führen Sie pvcreate /dev/xvdb /dev/xvdc /dev/xvdd /dev/xvde /dev/xvdf aus . Die Ausgabe sollte sein:

Physical volume "/dev/xvdb" successfully created
Physical volume "/dev/xvdc" successfully created
Physical volume "/dev/xvdd" successfully created
Physical volume "/dev/xvde" successfully created
Physical volume "/dev/xvdf" successfully created

Sehen Sie sich das Ergebnis mit pvs an oder pvdisplay :

"/dev/xvde" is a new physical volume of "5.00 GiB"
--- NEW Physical volume ---
PV Name               /dev/xvde
VG Name
PV Size               5.00 GiB
Allocatable           NO
PE Size               0
Total PE              0
Free PE               0
Allocated PE          0
PV UUID               728JtI-ffZD-h2dZ-JKnV-8IOf-YKdS-8srJtn

"/dev/xvdb" is a new physical volume of "1.00 GiB"
--- NEW Physical volume ---
PV Name               /dev/xvdb
VG Name
PV Size               1.00 GiB
Allocatable           NO
PE Size               0
Total PE              0
Free PE               0
Allocated PE          0
PV UUID               zk1phS-7uXc-PjBP-5Pv9-dtAV-zKe6-8OCRkZ

"/dev/xvdd" is a new physical volume of "2.00 GiB"
--- NEW Physical volume ---
PV Name               /dev/xvdd
VG Name
PV Size               2.00 GiB
Allocatable           NO
PE Size               0
Total PE              0
Free PE               0
Allocated PE          0
PV UUID               R0I139-Ipca-KFra-2IZX-o9xJ-IW49-T22fPc

"/dev/xvdc" is a new physical volume of "1.00 GiB"
--- NEW Physical volume ---
PV Name               /dev/xvdc
VG Name
PV Size               1.00 GiB
Allocatable           NO
PE Size               0
Total PE              0
Free PE               0
Allocated PE          0
PV UUID               FDzcVS-sq22-2b13-cYRj-dXHf-QLjS-22Meae

"/dev/xvdf" is a new physical volume of "8.00 GiB"
--- NEW Physical volume ---
PV Name               /dev/xvdf
VG Name
PV Size               8.00 GiB
Allocatable           NO
PE Size               0
Total PE              0
Free PE               0
Allocated PE          0
PV UUID               TRVSH9-Bo5D-JHHb-g0NX-8IoS-GG6T-YV4d0p

Schritt 2. Erstellen Sie die Volume-Gruppe

Führen Sie vgcreate myvg /dev/xvdb /dev/xvdc /dev/xvdd /dev/xvde /dev/xvdf aus . Sehen Sie sich die Ergebnisse mit vgs an oder vgdisplay :

--- Volume group ---
VG Name               myvg
System ID
Format                lvm2
Metadata Areas        5
Metadata Sequence No  1
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                0
Open LV               0
Max PV                0
Cur PV                5
Act PV                5
VG Size               16.98 GiB
PE Size               4.00 MiB
Total PE              4347
Alloc PE / Size       0 / 0
Free  PE / Size       4347 / 16.98 GiB
VG UUID               ewrrWp-Tonj-LeFa-4Ogi-BIJJ-vztN-yrepkh

Schritt 3:Logische Volumes erstellen

Führen Sie die folgenden Befehle aus:

lvcreate myvg --name media --size 4G
lvcreate myvg --name home --size 4G

Überprüfen Sie die Ergebnisse mit lvs oder lvdisplay :

--- Logical volume ---
LV Path                /dev/myvg/media
LV Name                media
VG Name                myvg
LV UUID                LOBga3-pUNX-ZnxM-GliZ-mABH-xsdF-3VBXFT
LV Write Access        read/write
LV Creation host, time ip-10-0-5-236, 2017-02-03 05:29:15 +0000
LV Status              available
# open                 0
LV Size                4.00 GiB
Current LE             1024
Segments               1
Allocation             inherit
Read ahead sectors     auto
- currently set to     256
Block device           252:0

--- Logical volume ---
LV Path                /dev/myvg/home
LV Name                home
VG Name                myvg
LV UUID                Hc06sl-vtss-DuS0-jfqj-oNce-qKf6-e5qHhK
LV Write Access        read/write
LV Creation host, time ip-10-0-5-236, 2017-02-03 05:29:40 +0000
LV Status              available
# open                 0
LV Size                4.00 GiB
Current LE             1024
Segments               1
Allocation             inherit
Read ahead sectors     auto
- currently set to     256
Block device           252:1

Schritt 4:Erstellen Sie das Dateisystem

Erstellen Sie das Dateisystem mit:

mkfs.ext3 /dev/myvg/media
mkfs.ext3 /dev/myvg/home

Mounten:

mount /dev/myvg/media /media
mount /dev/myvg/home /home

Sehen Sie sich Ihre vollständige Einrichtung mit lsblk an :

NAME         MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda         202:0    0   8G  0 disk
`-xvda1      202:1    0   8G  0 part /
xvdb         202:16   0   1G  0 disk
xvdc         202:32   0   1G  0 disk
xvdd         202:48   0   2G  0 disk
xvde         202:64   0   5G  0 disk
`-myvg-media 252:0    0   4G  0 lvm  /media
xvdf         202:80   0   8G  0 disk
`-myvg-home  252:1    0   4G  0 lvm  /home

Schritt 5:LVM erweitern

Fügen Sie eine neue Festplatte unter /dev/xvdg hinzu . Um das home zu erweitern führen Sie die folgenden Befehle aus:

pvcreate /dev/xvdg
vgextend myvg /dev/xvdg
lvextend -l 100%FREE /dev/myvg/home
resize2fs /dev/myvg/home

Führen Sie df -h aus und Sie sollten Ihre neue Größe sehen.

Und das war's!

LVM ermöglicht extreme Flexibilität bei der Konfiguration Ihres Speichers. Probieren Sie es aus und haben Sie Spaß mit LVM!


Dieser Artikel wurde ursprünglich im persönlichen Blog des Autors veröffentlicht und mit Genehmigung angepasst.


Linux
  1. Trimmen mit Lvm und Dm-Crypt?

  2. Konfigurieren von Blockspeicher auf Linux-Servern

  3. Konfigurieren von Blockspeicher auf Windows-Servern

  4. CentOS / RHEL :So migrieren Sie Speicher (LVM) mit dem Befehl pvmove

  5. lvremove-Befehl schlägt mit Fehler „LVM – Can’t remove open logical volume“ fehl

So fügen Sie ownCloud 9 externen Speicher hinzu

Lernen Sie LVM unter Linux mit grafischen Tools

Ein Leitfaden zu LVM-Snapshots mit ext4 unter CentOS 7

So erstellen Sie eine Volumengruppe in Linux mit LVM

Logical Volume Manager (LVM) im Vergleich zur Standardpartitionierung unter Linux

So ändern Sie die Größe eines logischen Volumes mit 5 einfachen LVM-Befehlen