Linux-Datenträgerverwaltung – LVM-Nutzung

Linux-Datenträgerverwaltung – LVM-Nutzung

1. Einführung in LVM

Bei der Verwaltung von Linux-Festplatten stoßen wir häufig auf eine solche Situation. Als wir die Linux-Festplatte ursprünglich geplant haben, haben wir einer Partition eine bestimmte Menge an Speicherplatz zugewiesen. Nach einer gewissen Zeit der Nutzung stellten wir fest, dass der von uns geplante Speicherplatz nicht ausreichte. Was sollten wir jetzt tun? Wir müssen einen Weg finden, die Kapazität zu erweitern. Suchen Sie eine Festplattenpartition, formatieren Sie sie, mounten Sie sie, kopieren Sie die Daten auf die neu hinzugefügte Festplatte und deinstallieren Sie dann die Originalfestplatte. Das ist, was wir normalerweise tun. Obwohl dies den Zweck der Kapazitätserweiterung erfüllt, ist es zeitaufwändig und mühsam. Wenn der Speicherplatz nach der zweiten Erweiterung immer noch nicht ausreicht, müssen wir die obigen Schritte wiederholen. Wenn der zugewiesene Speicherplatz zu groß ist, dauert es lange, bis festgestellt wird, dass er überhaupt nicht so viel Speicherplatz benötigt. Müssen wir es zu diesem Zeitpunkt erneut anpassen? Das klingt sehr umständlich. Zu diesem Zeitpunkt fragen Sie sich bestimmt, ob es eine Festplatte gibt, die gemountet werden kann. Wir können einige Verwaltungsmethoden verwenden, um den Speicherplatz online anzupassen, was Zeit spart und eine flexible Festplattenverwaltung ermöglicht. Ja, lvm hat eine solche Funktion.

LVM (Logical Volume Manager) ist ein logisches Volume-Verwaltungssystem, das die Kapazität des Dateisystems flexibel verwalten kann. Das Funktionsprinzip von LVM besteht darin, ein oder mehrere zugrunde liegende Blockgeräte in einem logischen Gerät zu organisieren. Zu diesem logischen Gerät können später weitere Partitionen hinzugefügt oder daraus entfernt werden, wodurch eine flexible Datenträgerverwaltung erreicht wird.

PV: physisches Volumen; ein physisches Volumen bezieht sich auf eine Festplattenpartition oder ein Gerät, das logisch dieselbe Funktion wie eine Festplattenpartition hat (z. B. RAID). Es ist der grundlegende Speicherlogikblock von LVM, enthält jedoch im Vergleich zu grundlegenden physischen Speichermedien (z. B. Partitionen, Festplatten usw.) Verwaltungsparameter in Bezug auf LVM.

VG: Volume Group (Volume Group) Die LVM-Volume-Gruppe ähnelt der physischen Festplatte in einem Nicht-LVM-System, insbesondere in Bezug auf die physische Volume-Zusammensetzung. Auf der Volume-Gruppe können eine oder mehrere LVM-Partitionen (logische Volumes) erstellt werden. Die LVM-Volume-Gruppe besteht aus einem oder mehreren physischen Volumes.

LV: Logisches Volume (logisches Volume) Das logische Volume von LVM ähnelt der Festplattenpartition in einem Nicht-LVM-System. Auf dem logischen Volume kann ein Dateisystem erstellt werden.

LVM fügt einige fragmentierte Festplattenpartitionen (PV) zu einer größeren Festplatte (VG) zusammen und unterteilt diese dann je nach Bedarf in Partitionen unterschiedlicher Größe (LV). Diese kleinen Partitionen (LV) können dynamisch erweitert und verkleinert werden. Dies ist der logische Datenträgerverwaltungsprozess von LVM. Die sogenannte LVM-Großplatte ist eine VG, die viele PVs integriert. Wie hoch ist also die maximale Kapazität dieser Großplatte? Wir wissen, dass die kleinste Datenspeichereinheit im Dateisystem ein Block ist, aber die kleinste Datenspeichereinheit in LVM ist PE. Die Rolle von PE ist die gleiche wie die von Block. Es ist zu beachten, dass die von LVM verwendete Standard-PE-Größe 4 M beträgt und LVMs VG bis zu 65534 PEs enthalten kann, was bedeutet, dass das Standard-LVM-VG 4 × 65534 M/1024 M = 256 G hat, sodass die Größe von PE die maximale Kapazität von VG bestimmt. Natürlich können wir die PE-Größe beim Erstellen von VG angeben, um die Größe von VG zu bestimmen.

2. LVM-Implementierung

1) Bereiten Sie mehrere Festplatten oder Partitionen vor, um PV zu simulieren

[root@test-centos7-node1 ~]# lsblk
NAME MAJ:MIN RM GRÖSSE RO TYP MOUNTPUNKT
sda 8:0 0 50G 0 Festplatte 
├─sda1 8:1 0 2G 0 Teil /Boot
├─sda2 8:2 0 2G 0 Teil [SWAP]
└─sda3 8:3 0 46G 0 Teil /
sdb 8:16 0 50G 0 Festplatte 
sr0 11:0 1 792M 0 rom 
[root@test-centos7-node1 ~]# fdisk /dev/sdb
Willkommen bei fdisk (util-linux 2.23.2).

Änderungen bleiben nur im Speicher, bis Sie sich entscheiden, sie zu schreiben.
Seien Sie vorsichtig, bevor Sie den Schreibbefehl verwenden.

Das Gerät enthält keine erkannte Partitionstabelle
Erstellen eines neuen DOS-Disklabels mit der Disk-Kennung 0x6180123f.

Befehl (m für Hilfe): p

Datenträger /dev/sdb: 53,7 GB, 53687091200 Bytes, 104857600 Sektoren
Einheiten = Sektoren von 1 * 512 = 512 Bytes
Sektorgröße (logisch/physisch): 512 Bytes / 512 Bytes
I/O-Größe (minimal/optimal): 512 Bytes / 512 Bytes
Datenträgerbezeichnungstyp: dos
Datenträgerkennung: 0x6180123f

  Gerät Booten Start Ende Blöcke Id System

Befehl (m für Hilfe): n
Partitionstyp:
  p primär (0 primär, 0 erweitert, 4 frei)
  e erweitert
Auswählen (Standard p): p
Partitionsnummer (1-4, Standard 1): 
Erster Sektor (2048-104857599, Standard 2048): 
Standardwert 2048 wird verwendet
Letzter Sektor, +Sektoren oder +Größe{K,M,G} (2048-104857599, Standard 104857599): +10G
Partition 1 vom Typ Linux und mit einer Größe von 10 GiB ist eingestellt

Befehl (m für Hilfe): p

Datenträger /dev/sdb: 53,7 GB, 53687091200 Bytes, 104857600 Sektoren
Einheiten = Sektoren von 1 * 512 = 512 Bytes
Sektorgröße (logisch/physisch): 512 Bytes / 512 Bytes
I/O-Größe (minimal/optimal): 512 Bytes / 512 Bytes
Datenträgerbezeichnungstyp: dos
Datenträgerkennung: 0x6180123f

  Gerät Booten Start Ende Blöcke Id System
/dev/sdb1 2048 20973567 10485760 83 Linux

Befehl (m für Hilfe): t
Ausgewählte Partition 1
Hex-Code (geben Sie L ein, um alle Codes aufzulisten): 8e
Partitionstyp „Linux“ in „Linux LVM“ geändert

Befehl (m für Hilfe): n
Partitionstyp:
  p primär (1 primär, 0 erweitert, 3 frei)
  e erweitert
Auswählen (Standard p): p
Partitionsnummer (2-4, Standard 2): 
Erster Sektor (20973568-104857599, Standard 20973568): 
Standardwert 20973568 wird verwendet
Letzter Sektor, +Sektoren oder +Größe{K,M,G} (20973568-104857599, Standard 104857599): +10G
Partition 2 vom Typ Linux und mit einer Größe von 10 GiB ist eingestellt

Befehl (m für Hilfe): t
Partitionsnummer (1,2, Standard 2): 
Hex-Code (geben Sie L ein, um alle Codes aufzulisten): 8e
Partitionstyp „Linux“ in „Linux LVM“ geändert

Befehl (m für Hilfe): n
Partitionstyp:
  p primär (2 primär, 0 erweitert, 2 frei)
  e erweitert
Auswählen (Standard p): p
Partitionsnummer (3,4, Standard 3): 
Erster Sektor (41945088-104857599, Standard 41945088): 
Standardwert 41945088 wird verwendet
Letzter Sektor, +Sektoren oder +Größe{K,M,G} (41945088-104857599, Standard 104857599): +10G
Partition 3 vom Typ Linux und mit einer Größe von 10 GiB ist eingestellt

Befehl (m für Hilfe): t
Partitionsnummer (1-3, Standard 3): 
Hex-Code (geben Sie L ein, um alle Codes aufzulisten): 8e 
Partitionstyp „Linux“ in „Linux LVM“ geändert

Befehl (m für Hilfe): p

Datenträger /dev/sdb: 53,7 GB, 53687091200 Bytes, 104857600 Sektoren
Einheiten = Sektoren von 1 * 512 = 512 Bytes
Sektorgröße (logisch/physisch): 512 Bytes / 512 Bytes
I/O-Größe (minimal/optimal): 512 Bytes / 512 Bytes
Datenträgerbezeichnungstyp: dos
Datenträgerkennung: 0x6180123f

  Gerät Booten Start Ende Blöcke Id System
/dev/sdb1 2048 20973567 10485760 8e Linux LVM
/dev/sdb2 20973568 41945087 10485760 8e Linux LVM
/dev/sdb3 41945088 62916607 10485760 8e Linux LVM

Befehl (m für Hilfe): w
Die Partitionstabelle wurde geändert!

Aufruf von ioctl() zum erneuten Lesen der Partitionstabelle.
Datenträger werden synchronisiert.
[root@test-centos7-node1 ~]# lsblk
NAME MAJ:MIN RM GRÖSSE RO TYP MOUNTPUNKT
sda 8:0 0 50G 0 Festplatte 
├─sda1 8:1 0 2G 0 Teil /Boot
├─sda2 8:2 0 2G 0 Teil [SWAP]
└─sda3 8:3 0 46G 0 Teil /
sdb 8:16 0 50G 0 Festplatte 
├─sdb1 8:17 0 10G 0 Teil 
├─sdb2 8:18 0 10G 0 Teil 
└─sdb3 8:19 0 10G 0 Teil 
sr0 11:0 1 792M 0 rom 
[root@test-centos7-node1 ~]

Hinweis: Die hier verwendeten Partitionen dienen dazu, die Festplatte als PV zu simulieren. Dabei ist zu beachten, dass nach dem Speichern der Partitionen möglicherweise Probleme auftreten. Das heißt, wir können die Partitionen nach der Partitionierung nicht mit lsblk sehen. Sie können partprobe verwenden, um die Partitionsinformationen zu synchronisieren. CentOS 6 verwendet partx -a /dev/sdb, um Partitionen hinzuzufügen und sie mit dem Speicher zu synchronisieren. Wenn Sie eine Partition löschen möchten, müssen Sie partx -d -nr # /dev/sdb ausführen. Dieser Befehl löscht die Partitionsinformationen sdb# aus den Partitionsinformationen von /dev/sdb und synchronisiert sie mit dem Speicher. Zu beachten ist, dass wir als Partitionstyp 8e auswählen müssen, also Linux LVM

2) Installieren Sie das lvm2-Paket

[root@test-centos7-node1 ~]# lvs
-bash: lvs: Befehl nicht gefunden
[root@test-centos7-node1 ~]# yum info lvm2 
Geladene Plugins: fastestmirror
Spiegelgeschwindigkeiten aus zwischengespeicherter Hostdatei laden
 * Basis: mirrors.aliyun.com
 * Extras: mirrors.aliyun.com
 * Aktualisierungen: mirrors.aliyun.com
Verfügbare Pakete
Bezeichnung: lvm2
Bogen: x86_64
Epoche: 7
Version: 2.02.185
Version: 2.el7_7.2
Größe: 1,3 M
Repo: Updates/7/x86_64
Zusammenfassung: Tools zur Verwaltung logischer Userland-Volumes
URL: http://sources.redhat.com/lvm2
Lizenz: GPLv2
Beschreibung: LVM2 beinhaltet die gesamte Unterstützung für die Handhabung von Lese-/Schreibvorgängen auf
      : physische Datenträger (Festplatten, RAID-Systeme, magneto-optische Datenträger usw.),
      : mehrere Geräte (MD), siehe mdadm(8) oder sogar Loop-Geräte, siehe
      : losetup(8)), Erstellen von Volume-Gruppen (eine Art virtueller Datenträger) aus einem
      : oder mehrere physische Datenträger und Erstellen eines oder mehrerer logischer Datenträger
      : (Art der logischen Partitionen) in Datenträgergruppen.

[root@test-centos7-node1 ~]# yum install lvm2 -y
Geladene Plugins: fastestmirror
Spiegelgeschwindigkeiten aus zwischengespeicherter Hostdatei laden
 * Basis: mirrors.aliyun.com
 * Extras: mirrors.aliyun.com
 * Aktualisierungen: mirrors.aliyun.com
Auflösen von Abhängigkeiten
--> Transaktionsprüfung wird ausgeführt
---> Paket lvm2.x86_64 7:2.02.185-2.el7_7.2 wird installiert
--> Abhängigkeit wird verarbeitet: lvm2-libs = 7:2.02.185-2.el7_7.2 für Paket: 7:lvm2-2.02.185-2.el7_7.2.x86_64
--> Abhängigkeit wird verarbeitet: device-mapper-persistent-data >= 0.7.0-0.1.rc6 für Paket: 7:lvm2-2.02.185-2.el7_7.2.x86_64
--> Abhängigkeit wird verarbeitet: liblvm2app.so.2.2(Base)(64bit) für Paket: 7:lvm2-2.02.185-2.el7_7.2.x86_64
--> Abhängigkeit wird verarbeitet: libdevmapper.so.1.02(DM_1_02_141)(64bit) für Paket: 7:lvm2-2.02.185-2.el7_7.2.x86_64
--> Abhängigkeit wird verarbeitet: libdevmapper-event.so.1.02(Base)(64bit) für Paket: 7:lvm2-2.02.185-2.el7_7.2.x86_64
--> Abhängigkeit wird verarbeitet: liblvm2app.so.2.2()(64bit) für Paket: 7:lvm2-2.02.185-2.el7_7.2.x86_64
--> Abhängigkeit wird verarbeitet: libdevmapper-event.so.1.02()(64bit) für Paket: 7:lvm2-2.02.185-2.el7_7.2.x86_64
--> Transaktionsprüfung wird ausgeführt
---> Paket device-mapper-event-libs.x86_64 7:1.02.158-2.el7_7.2 wird installiert
---> Paket device-mapper-libs.x86_64 7:1.02.140-8.el7 wird aktualisiert
--> Abhängigkeit wird verarbeitet: device-mapper-libs = 7:1.02.140-8.el7 für Paket: 7:device-mapper-1.02.140-8.el7.x86_64
---> Paket device-mapper-libs.x86_64 7:1.02.158-2.el7_7.2 wird ein Update sein
---> Paket device-mapper-persistent-data.x86_64 0:0.8.5-1.el7 wird installiert
---> Paket lvm2-libs.x86_64 7:2.02.185-2.el7_7.2 wird installiert
--> Abhängigkeit wird verarbeitet: device-mapper-event = 7:1.02.158-2.el7_7.2 für Paket: 7:lvm2-libs-2.02.185-2.el7_7.2.x86_64
--> Transaktionsprüfung wird ausgeführt
---> Paket device-mapper.x86_64 7:1.02.140-8.el7 wird aktualisiert
---> Paket device-mapper.x86_64 7:1.02.158-2.el7_7.2 wird ein Update sein
---> Paket device-mapper-event.x86_64 7:1.02.158-2.el7_7.2 wird installiert
--> Abhängigkeitsauflösung abgeschlossen

Aufgelöste Abhängigkeiten

=========================================================================================================================
 Paket Arch Version Repository Größe
=========================================================================================================================
Installieren:
 lvm2 x86_64 7:2.02.185-2.el7_7.2 aktualisiert 1,3 M
Installieren für Abhängigkeiten:
 Gerätemapper-Ereignis x86_64 7:1.02.158-2.el7_7.2 aktualisiert 190 k
 device-mapper-event-libs x86_64 7:1.02.158-2.el7_7.2 Aktualisierungen 189 k
 Gerätemapper-Persistente-Daten x86_64 0.8.5-1.el7 Basis 423 k
 lvm2-libs x86_64 7:2.02.185-2.el7_7.2 aktualisiert 1,1 M
Aktualisierung für Abhängigkeiten:
 Gerätemapper x86_64 7:1.02.158-2.el7_7.2 aktualisiert 294 k
 device-mapper-libs x86_64 7:1.02.158-2.el7_7.2 Aktualisierungen 322 k

Zusammenfassung der Transaktion
=========================================================================================================================
Installieren Sie 1 Paket (+4 abhängige Pakete)
Upgrade (2 abhängige Pakete)

Gesamte Downloadgröße: 3,8 M
Pakete herunterladen:
Delta-RPMs deaktiviert, da /usr/bin/applydeltarpm nicht installiert ist.
(1/7): device-mapper-event-1.02.158-2.el7_7.2.x86_64.rpm | 190 kB 00:00:00   
(2/7): device-mapper-event-libs-1.02.158-2.el7_7.2.x86_64.rpm | 189 kB 00:00:00   
(3/7): device-mapper-libs-1.02.158-2.el7_7.2.x86_64.rpm | 322 kB 00:00:00   
(4/7): lvm2-2.02.185-2.el7_7.2.x86_64.rpm | 1,3 MB 00:00:00   
(5/7): device-mapper-1.02.158-2.el7_7.2.x86_64.rpm | 294 kB 00:00:00   
(6/7): lvm2-libs-2.02.185-2.el7_7.2.x86_64.rpm | 1,1 MB 00:00:00   
(7/7): device-mapper-persistent-data-0.8.5-1.el7.x86_64.rpm | 423 kB 00:00:00   
----------------------------------------------------------------------------------------------------------------------------
Gesamt 4,3 MB/s | 3,8 MB 00:00:00   
Ausführen einer Transaktionsprüfung
Ausführen eines Transaktionstests
Transaktionstest erfolgreich
Transaktion wird ausgeführt
 Aktualisierung: 7:device-mapper-1.02.158-2.el7_7.2.x86_64 1/9 
 Aktualisierung: 7:device-mapper-libs-1.02.158-2.el7_7.2.x86_64 2/9 
 Installieren: 7:device-mapper-event-libs-1.02.158-2.el7_7.2.x86_64 3/9 
 Installieren: 7:device-mapper-event-1.02.158-2.el7_7.2.x86_64 4/9 
 Installieren: 7:lvm2-libs-2.02.185-2.el7_7.2.x86_64 5/9 
 Installieren: device-mapper-persistent-data-0.8.5-1.el7.x86_64 6/9 
 Installieren: 7:lvm2-2.02.185-2.el7_7.2.x86_64 7/9 
Symlink von /etc/systemd/system/sysinit.target.wants/lvm2-lvmpolld.socket zu /usr/lib/systemd/system/lvm2-lvmpolld.socket erstellt.
 Bereinigung: 7:device-mapper-1.02.140-8.el7.x86_64 8/9 
 Bereinigung: 7:device-mapper-libs-1.02.140-8.el7.x86_64 9/9 
 Überprüfung: 7:device-mapper-libs-1.02.158-2.el7_7.2.x86_64 1/9 
 Überprüfung: 7:device-mapper-1.02.158-2.el7_7.2.x86_64 2/9 
 Überprüfung: device-mapper-persistent-data-0.8.5-1.el7.x86_64 3/9 
 Überprüfung: 7:lvm2-2.02.185-2.el7_7.2.x86_64 4/9 
 Überprüfung: 7:lvm2-libs-2.02.185-2.el7_7.2.x86_64 5/9 
 Überprüfung: 7:device-mapper-event-1.02.158-2.el7_7.2.x86_64 6/9 
 Überprüfung: 7:device-mapper-event-libs-1.02.158-2.el7_7.2.x86_64 7/9 
 Überprüfung: 7:device-mapper-1.02.140-8.el7.x86_64 8/9 
 Überprüfung: 7:device-mapper-libs-1.02.140-8.el7.x86_64 9/9

Eingerichtet:
 lvm2.x86_64 7:2.02.185-2.el7_7.2                                             

Installierte Abhängigkeit:
 Gerätemapper-Event.x86_64 7:1.02.158-2.el7_7.2 Gerätemapper-Event-libs.x86_64 7:1.02.158-2.el7_7.2     
 Gerätemapper-persistente-Daten.x86_64 0:0.8.5-1.el7 lvm2-libs.x86_64 7:2.02.185-2.el7_7.2            

Abhängigkeit aktualisiert:
 device-mapper.x86_64 7:1.02.158-2.el7_7.2 device-mapper-libs.x86_64 7:1.02.158-2.el7_7.2        

Vollständig!
[root@test-centos7-node1 ~]

Hinweis: Das Standardpaket ist im minimalen Installationssystem nicht auf dem System installiert. Daher müssen wir dieses Paket installieren, bevor wir LVM erstellen können.

3) PV erstellen

[root@test-centos7-node1 ~]# pvcreate /dev/sdb{1,2,3}
 Der physische Datenträger „/dev/sdb1“ wurde erfolgreich erstellt.
 Der physische Datenträger „/dev/sdb2“ wurde erfolgreich erstellt.
 Physischer Datenträger „/dev/sdb3“ erfolgreich erstellt.
[root@test-centos7-node1 ~]# pvscan 
 PV /dev/sdb1 lvm2 [10,00 GiB]
 PV /dev/sdb3 lvm2 [10,00 GiB]
 PV /dev/sdb2 lvm2 [10,00 GiB]
 Gesamt: 3 [30,00 GiB] / im Einsatz: 0 [0 ] / in keinem VG: 3 [30,00 GiB]
[root@test-centos7-node1 ~]# pvs
 PV VG Fmt Attr PSize PFrei 
 /dev/sdb1 lvm2 --- 10,00 g 10,00 g
 /dev/sdb2 lvm2 --- 10,00 g 10,00 g
 /dev/sdb3 lvm2 --- 10,00g 10,00g
[root@test-centos7-node1 ~]# pvdisplay 
 „/dev/sdb1“ ist ein neues physisches Volume mit „10,00 GiB“
 --- NEUES physisches Volumen ---
 PV-Name /dev/sdb1
 VG-Name        
 PV-Größe 10,00 GiB
 Zurechenbare NEIN
 PE Größe 0  
 Gesamt-KGV 0
 Freies PE 0
 Zugewiesene PE 0
 PV-UUID MsszES-YPdm-YGQl-7rgg-B6gX-Q4xu-T8m1gz
  
 „/dev/sdb3“ ist ein neues physisches Volume mit „10,00 GiB“
 --- NEUES physisches Volumen ---
 PV-Name /dev/sdb3
 VG-Name        
 PV-Größe 10,00 GiB
 Zurechenbare NEIN
 PE Größe 0  
 Gesamt-KGV 0
 Freies PE 0
 Zugewiesene PE 0
 PV-UUID BMMx8p-zu9O-ns61-G9DU-iKMR-NmZO-crCjlR
  
 „/dev/sdb2“ ist ein neues physisches Volume mit „10,00 GiB“
 --- NEUES physisches Volumen ---
 PV-Name /dev/sdb2
 VG-Name        
 PV-Größe 10,00 GiB
 Zurechenbare NEIN
 PE Größe 0  
 Gesamt-KGV 0
 Freies PE 0
 Zugewiesene PE 0
 PV-UUID LPynpW-twlu-fxwg-OlCT-jA2A-R5UI-fvqWLj
  
[root@test-centos7-node1 ~]

Hinweis: Der Befehl pvcreate gibt die Erstellung eines PV an, gefolgt von der Gerätedatei, die der Festplatte oder Partition entspricht. Der Befehl pvscan wird verwendet, um im System nach Festplatten mit PV-Attributen zu suchen. Das PV-Attribut ist die von pvcreate erstellte Festplatte. pvs wird verwendet, um den Kurzstatus des PV anzuzeigen, und pvdisplay wird verwendet, um die detaillierten Informationen des PV anzuzeigen. Wenn wir eine Festplatte entfernen möchten, sodass sie keine PV-Attribute mehr hat, können wir natürlich pvremove + den Gerätedateipfad der Festplatte verwenden.

[root@test-centos7-node1 ~]# pvremove /dev/sdb3
 Beschriftungen auf dem physischen Datenträger „/dev/sdb3“ erfolgreich gelöscht.
[root@test-centos7-node1 ~]# pvs
 PV VG Fmt Attr PSize PFrei 
 /dev/sdb1 lvm2 --- 10,00 g 10,00 g
 /dev/sdb2 lvm2 --- 10,00 g 10,00 g
[root@test-centos7-node1 ~]

Hinweis: Voraussetzung für das Entfernen eines PV ist, dass dieser in keinem VG vorhanden ist. Andernfalls kann er nicht entfernt werden.

4) VG erstellen

[root@test-centos7-node1 ~]# pvs
 PV VG Fmt Attr PSize PFrei 
 /dev/sdb1 lvm2 --- 10,00 g 10,00 g
 /dev/sdb2 lvm2 --- 10,00 g 10,00 g
[root@test-centos7-node1 ~]# pvcreate /dev/sdb3
 Physischer Datenträger „/dev/sdb3“ erfolgreich erstellt.
[root@test-centos7-node1 ~]# pvs
 PV VG Fmt Attr PSize PFrei 
 /dev/sdb1 lvm2 --- 10,00 g 10,00 g
 /dev/sdb2 lvm2 --- 10,00 g 10,00 g
 /dev/sdb3 lvm2 --- 10,00g 10,00g
[root@test-centos7-node1 ~]# vgcreate test -s 8M /dev/sdb{1,2,3}
 Volumegruppe "test" erfolgreich erstellt
[root@test-centos7-node1 ~]# vgs
 VG #PV #LV #SN Attr VGröße VFrei 
 test 3 0 0 wz--n- <29,98g <29,98g
[root@test-centos7-node1 ~]# vgscan
 Volume-Gruppen aus dem Cache lesen.
 Volume-Gruppe „Test“ mit Metadatentyp lvm2 gefunden
[root@test-centos7-node1 ~]# vgdisplay 
 --- Datenträgergruppe ---
 VG-Namenstest
 System-ID       
 Formatieren Sie lvm2
 Metadatenbereiche 3
 Metadatensequenz Nr. 1
 VG Zugriff lesen/schreiben
 VG Status größenveränderbar
 MAXIMALER WERT 0
 Aktueller Wert 0
 Offenes LV 0
 Max. PV 0
 Aktueller PV 3
 Akt PV 3
 VG-Größe < 29,98 GiB
 PE-Größe 8,00 MiB
 Gesamt PE 3837
 Alloc PE / Größe 0 / 0  
 Freies PE / Größe 3837 / <29,98 GiB
 VG-UUID 31vxAP-L5jb-8Yxm-25m2-LdD0-ee8R-sdTjum
  
[root@test-centos7-node1 ~]# vgreduce test /dev/sdb3
 "/dev/sdb3" aus der Datenträgergruppe "test" entfernt
[root@test-centos7-node1 ~]# vgs
 VG #PV #LV #SN Attr VGröße VFrei 
 test 2 0 0 wz--n- 19,98g 19,98g
[root@test-centos7-node1 ~]# vgcreate test2 /dev/sdb3
 Volumegruppe "test2" erfolgreich erstellt
[root@test-centos7-node1 ~]# vgs
 VG #PV #LV #SN Attr VGröße VFrei 
 test 2 0 0 wz--n- 19,98g 19,98g
 test2 1 0 0 wz--n- <10,00g <10,00g
[root@test-centos7-node1 ~]# vgdisplay test2
 --- Datenträgergruppe ---
 VG Name test2
 System-ID       
 Formatieren Sie lvm2
 Metadatenbereiche 1
 Metadatensequenz Nr. 1
 VG Zugriff lesen/schreiben
 VG Status größenveränderbar
 MAXIMALER WERT 0
 Aktueller Wert 0
 Offenes LV 0
 Max. PV 0
 Aktueller PV 1
 Akt PV 1
 VG-Größe <10,00 GiB
 PE-Größe 4,00 MiB
 Gesamt PE 2559
 Alloc PE / Größe 0 / 0  
 Freies PE / Größe 2559 / <10,00 GiB
 VG-UUID rc94SP-JAlk-63Rw-n5xz-qB0d-grnT-ItrMvT
  
[root@test-centos7-node1 ~]# vgremove test2
 Volume-Gruppe „test2“ erfolgreich entfernt
[root@test-centos7-node1 ~]# vgs
 VG #PV #LV #SN Attr VGröße VFrei 
 test 2 0 0 wz--n- 19,98g 19,98g
[root@test-centos7-node1 ~]

Hinweis: vgcreate bedeutet, eine VG zu erstellen. Das Verwendungsformat ist vgcreate VGNAME [Option] Pfad des Speichergeräts. -s gibt die Größe des angegebenen PE an und VGNAME gibt den Namen der VG an. Es ist zu beachten, dass der angegebene Name nicht mit dem vorhandenen VG-Namen im System identisch sein darf. vgs wird verwendet, um die Kurzinformationen aller VGs im System anzuzeigen, vgscan sucht im System nach VGs und vgdisplay wird verwendet, um die Detailinformationen aller VGs anzuzeigen. In diesem Beispiel gibt es natürlich nur eins. Wir können auch angeben, dass die Detailinformationen einer VG später angezeigt werden sollen. Wir müssen nur ihren VG-Namen angeben. Es gibt viele Befehle im Zusammenhang mit vg. vgreduce wird verwendet, um PV in VG zu entfernen und vgremove wird verwendet, um eine VG zu löschen. Beide Befehle erfordern, dass anschließend der Name der zu bedienenden VG angegeben wird.

5) LV erstellen

[root@test-centos7-node1 ~]# lvs
[root@test-centos7-node1 ~]# lvcreate -L 2G -n aaa test
 Logisches Volume „aaa“ erstellt.
[root@test-centos7-node1 ~]# lvcreate -L 3G -n bbb test 
 Logisches Volume „bbb“ erstellt.
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 AAA-Test -wi-a----- 2,00 g                          
 BBB-Test -wi-a----- 3,00 g                          
[root@test-centos7-node1 ~]# lvscan 
 ACTIVE '/dev/test/aaa' [2,00 GiB] erben
 ACTIVE '/dev/test/bbb' [3,00 GiB] erben
[root@test-centos7-node1 ~]# lvdisplay 
 --- Logisches Volumen ---
 LV-Pfad /dev/test/aaa
 LV-Name aaa
 VG-Namenstest
 LV-UUID R9weh0-D85B-rMcW-oYSM-dAQb-gIQh-RXxITP
 LV Schreibzugriff Lesen/Schreiben
 LV-Erstellungshost, Zeit test-centos7-node1, 2020-01-06 09:05:23 -0500
 LV-Status verfügbar
 # öffnen 0
 LV-Größe: 2,00 GiB
 Aktuelle LE 256
 Segmente 1
 Zuordnung übernehmen
 Lesen Sie voraus Sektoren Auto
 - derzeit auf 8192 eingestellt
 Gerät blockieren 253:0
  
 --- Logisches Volumen ---
 LV-Pfad /dev/test/bbb
 LV-Name bbb
 VG-Namenstest
 LV-UUID LYwvZj-ogpf-nwtF-mja6-xwwl-A24W-BslJOu
 LV Schreibzugriff Lesen/Schreiben
 LV-Erstellungshost, Zeit test-centos7-node1, 2020-01-06 09:05:34 -0500
 LV-Status verfügbar
 # öffnen 0
 LV-Größe: 3,00 GiB
 Aktuelle LE 384
 Segmente 1
 Zuordnung übernehmen
 Lesen Sie voraus Sektoren Auto
 - derzeit auf 8192 eingestellt
 Blockgerät 253:1
  
[root@test-centos7-node1 ~]# lvresize -L +4G /dev/test/aaa 
 Größe des logischen Datenträgers test/aaa von 2,00 GiB (256 Extents) auf 6,00 GiB (768 Extents) geändert.
 Die Größe des logischen Datenträgers test/aaa wurde erfolgreich geändert.
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 aaa-test -wi-a----- 6,00 g                          
 BBB-Test -wi-a----- 3,00 g                          
[root@test-centos7-node1 ~]# lvresize -L -1G /dev/test/bbb
 WARNUNG: Reduzierung des aktiven logischen Datenträgers auf 2,00 GiB.
 DIES KANN IHRE DATEN ZERSTÖREN (Dateisystem usw.)
Möchten Sie Test/BBB wirklich reduzieren? [j/n]: j
 Größe des logischen Volumes test/bbb ​​​​von 3,00 GiB (384 Extents) auf 2,00 GiB (256 Extents) geändert.
 Die Größe des logischen Datenträgers test/bbb ​​wurde erfolgreich geändert.
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 aaa-test -wi-a----- 6,00 g                          
 BBB-Test -wi-a----- 2,00 g                          
[root@test-centos7-node1 ~]# lvreduce -L 3G /dev/test/aaa  
 WARNUNG: Reduzierung des aktiven logischen Datenträgers auf 3,00 GiB.
 DIES KANN IHRE DATEN ZERSTÖREN (Dateisystem usw.)
Willst du test/aaa wirklich reduzieren? [j/n]: j
 Größe des logischen Datenträgers test/aaa von 6,00 GiB (768 Extents) auf 3,00 GiB (384 Extents) geändert.
 Die Größe des logischen Datenträgers test/aaa wurde erfolgreich geändert.
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 AAA-Test -wi-a----- 3,00 g                          
 BBB-Test -wi-a----- 2,00 g                          
[root@test-centos7-node1 ~]# lvreduce -L -1G /dev/test/aaa 
 WARNUNG: Reduzierung des aktiven logischen Datenträgers auf 2,00 GiB.
 DIES KANN IHRE DATEN ZERSTÖREN (Dateisystem usw.)
Willst du test/aaa wirklich reduzieren? [j/n]: j
 Größe des logischen Datenträgers test/aaa von 3,00 GiB (384 Extents) auf 2,00 GiB (256 Extents) geändert.
 Die Größe des logischen Datenträgers test/aaa wurde erfolgreich geändert.
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 AAA-Test -wi-a----- 2,00 g                          
 BBB-Test -wi-a----- 2,00 g                          
[root@test-centos7-node1 ~]# lvremove /dev/test/bbb
Möchten Sie den aktiven logischen Datenträger test/bbb ​​wirklich entfernen? [j/n]: j
 Logisches Volume „bbb“ erfolgreich entfernt
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 AAA-Test -wi-a----- 2,00 g                          
[root@test-centos7-node1 ~]

Beschreibung: Der Befehl lvcreate wird zum Erstellen von LV verwendet, wobei -L die Größe des angegebenen LV angibt, wonach der Name des LV den Namen des VG folgt, was darauf hinweist, dass der LV aus diesem VG erstellt wird. VS der angegebenen VG; Anpassungsgröße. Wenn Sie alle LVs auf der VG löschen müssen, müssen Sie einen bestimmten LV löschen, und müssen den entsprechenden Gerätepfad angeben.

An diesem Punkt wurde lvm implementiert, und Sie können es direkt formatieren und dann zur Verwendung mounten

[root@test-centos7-node1 ~]# vgs
 VG #PV #LV #SN Attr VGröße VFrei 
 test 2 0 0 wz--n- 19,98g 19,98g
[root@test-centos7-node1 ~]# lvcreate -l 100%KOSTENLOS -n xxx test
WARNUNG: xfs-Signatur auf /dev/test/xxx bei Offset 0 erkannt. Löschen? [j/n]: j
 XFS-Signatur auf /dev/test/xxx wird gelöscht.
 Logisches Volume „xxx“ erstellt.
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 xxx test-wi-a----- 19,98 g                          
[root@test-centos7-node1 ~]# mkfs.xfs -f /dev/test/xxx 
Metadaten=/dev/test/xxx isize=512 agcount=4, agsize=1309696 Blöcke
     = Sektenz=512 Attr=2, Projid32bit=1
     = crc=1 finobt=0, spärlich=0
Daten = Bsize=4096 Blöcke=5238784, imaxpct=25
     = sunit=0 swidth=0 Blöcke
Benennung =Version 2 bsize=4096 ascii-ci=0 ftype=1
Protokoll = internes Protokoll, Größe = 4096, Blöcke = 2560, Version = 2
     = Sektenz=512 Sunit=0 Blöcke, Lazy-Count=1
Echtzeit = keine extsz=4096 Blöcke=0, rtextents=0
[root@test-centos7-node1 ~]# lsblk
NAME MAJ:MIN RM GRÖSSE RO TYP MOUNTPUNKT
sda 8:0 0 50G 0 Festplatte 
├─sda1 8:1 0 2G 0 Teil /Boot
├─sda2 8:2 0 2G 0 Teil [SWAP]
└─sda3 8:3 0 46G 0 Teil /
sdb 8:16 0 50G 0 Festplatte 
├─sdb1 8:17 0 10G 0 Teil 
│ └─test-xxx 253:0 0 20G 0 lvm 
├─sdb2 8:18 0 10G 0 Teil 
│ └─test-xxx 253:0 0 20G 0 lvm 
└─sdb3 8:19 0 10G 0 Teil 
sr0 11:0 1 792M 0 rom 
[root@test-centos7-node1 ~]# mount /dev/test/xxx /mnt
[root@test-centos7-node1 ~]# df -h
Verwendete Dateisystemgröße Verfügbare Nutzung% Eingebunden auf
/dev/sda3 46 G 1,6 G 45 G 4 % /
devtmpfs 1,9 G 0 1,9 G 0 % /Entwickler
tmpfs 1,9 G 0 1,9 G 0 % /Entwickler/shm
tmpfs 1,9 G 8,6 M 1,9 G 1 %/Lauf
tmpfs 1,9 G 0 1,9 G 0 % /sys/fs/cgroup
/dev/sda1 2,0 G 135 M 1,9 G 7 % /boot
tmpfs 378M 0 378M 0 % /run/Benutzer/0
/dev/mapper/test-xxx 20 G 33 M 20 G 1 % /mnt
[root@test-centos7-node1 ~]

3. Ausbau des LV

1) Erstelle ein PV und füge es dem VG hinzu

[root@test-centos7-node1 ~]# pvs
 PV VG Fmt Attr PSize PFrei
 /dev/sdb1 test lvm2 a-- 9,99 g 0 
 /dev/sdb2 test lvm2 a-- 9,99 g 0 
[root@test-centos7-node1 ~]# vgdisplay 
 --- Datenträgergruppe ---
 VG-Namenstest
 System-ID       
 Formatieren Sie lvm2
 Metadatenbereiche 2
 Metadatensequenz Nr. 28
 VG Zugriff lesen/schreiben
 VG Status größenveränderbar
 MAXIMALER WERT 0
 Aktueller LV 1
 Öffne LV 1
 Max. PV 0
 Aktueller PV 2
 Akt PV 2
 VG-Größe: 19,98 GiB
 PE-Größe 8,00 MiB
 Gesamt PE 2558
 Alloc PE / Größe 2558 / 19,98 GiB
 Freies PE / Größe 0 / 0  
 VG-UUID 31vxAP-L5jb-8Yxm-25m2-LdD0-ee8R-sdTjum
  
[root@test-centos7-node1 ~]

Hinweis: Aus den obigen Informationen können wir ersehen, dass die Größe von VG 19,98 G beträgt, was der Größe von zwei PVs entspricht. Nun erstellen wir ein neues PV und fügen es zu VG hinzu

[root@test-centos7-node1 ~]# pvs
 PV VG Fmt Attr PSize PFrei
 /dev/sdb1 test lvm2 a-- 9,99 g 0 
 /dev/sdb2 test lvm2 a-- 9,99 g 0 
[root@test-centos7-node1 ~]# pvcreate /dev/sdb3
 Der physische Datenträger „/dev/sdb3“ wurde erfolgreich erstellt.
[root@test-centos7-node1 ~]# pvs
 PV VG Fmt Attr PSize PFrei 
 /dev/sdb1 test lvm2 a-- 9,99 g 0 
 /dev/sdb2 test lvm2 a-- 9,99 g 0 
 /dev/sdb3 lvm2 --- 10,00g 10,00g
[root@test-centos7-node1 ~]# vgs
 VG #PV #LV #SN Attr VGröße VFrei
 Test 2 1 0 wz--n- 19,98 g 0 
[root@test-centos7-node1 ~]# vgextend test /dev/sdb3
 Volumegruppe "test" erfolgreich erweitert
[root@test-centos7-node1 ~]# vgs
 VG #PV #LV #SN Attr VGröße VFrei
 test 3 1 0 wz--n- <29,98g 9,99g
[root@test-centos7-node1 ~]# vgdisplay 
 --- Datenträgergruppe ---
 VG-Namenstest
 System-ID       
 Formatieren Sie lvm2
 Metadatenbereiche 3
 Metadatensequenz Nr. 31
 VG Zugriff lesen/schreiben
 VG Status größenveränderbar
 MAXIMALER WERT 0
 Aktueller LV 1
 Öffne LV 1
 Max. PV 0
 Aktueller PV 3
 Akt PV 3
 VG-Größe < 29,98 GiB
 PE-Größe 8,00 MiB
 Gesamt PE 3837
 Alloc PE / Größe 2558 / 19,98 GiB
 Kostenloses PE / Größe 1279 / 9,99 GiB
 VG-UUID 31vxAP-L5jb-8Yxm-25m2-LdD0-ee8R-sdTjum
  
[root@test-centos7-node1 ~]

Beschreibung: Der Befehl vgextend wird verwendet, um das angegebene PV zum angegebenen VG hinzuzufügen. Das VG muss nur seinen Namen angeben und das PV muss seinen Gerätepfad angeben.

2) Fügen Sie das neu hinzugefügte VG's PE zu xxx LV hinzu

[root@test-centos7-node1 ~]# vgs
 VG #PV #LV #SN Attr VGröße VFrei
 test 3 1 0 wz--n- <29,98g 9,99g
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 xxx test-wi-ao---- 19,98 g                          
[root@test-centos7-node1 ~]# lvdisplay 
 --- Logisches Volumen ---
 LV-Pfad /dev/test/xxx
 LV-Name xxx
 VG-Namenstest
 LV-UUID ihOo41-gh1L-eSHK-iLXY-UGfF-J6uI-UmVWhF
 LV Schreibzugriff Lesen/Schreiben
 LV-Erstellungshost, Zeit test-centos7-node1, 2020-01-06 10:00:08 -0500
 LV-Status verfügbar
 # öffnen 1
 LV-Größe: 19,98 GiB
 Aktuelle LE 2558
 Segmente 2
 Zuordnung übernehmen
 Lesen Sie voraus Sektoren Auto
 - derzeit auf 8192 eingestellt
 Gerät blockieren 253:0
  
[root@test-centos7-node1 ~]# lvextend -l +100%FREE /dev/test/xxx 
 Größe des logischen Datenträgers Test/xxx von 19,98 GiB (2558 Extents) auf <29,98 GiB (3837 Extents) geändert.
 Die Größe des logischen Datenträgers test/xxx wurde erfolgreich geändert.
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 xxx test -wi-ao---- <29,98 g                          
[root@test-centos7-node1 ~]# lvdisplay 
 --- Logisches Volumen ---
 LV-Pfad /dev/test/xxx
 LV-Name xxx
 VG-Namenstest
 LV-UUID ihOo41-gh1L-eSHK-iLXY-UGfF-J6uI-UmVWhF
 LV Schreibzugriff Lesen/Schreiben
 LV-Erstellungshost, Zeit test-centos7-node1, 2020-01-06 10:00:08 -0500
 LV-Status verfügbar
 # öffnen 1
 LV-Größe <29,98 GiB
 Aktuelle LE 3837
 Segmente 3
 Zuordnung übernehmen
 Lesen Sie voraus Sektoren Auto
 - derzeit auf 8192 eingestellt
 Gerät blockieren 253:0
  
[root@test-centos7-node1 ~]# vgs
 VG #PV #LV #SN Attr VGröße VFrei
 test 3 1 0 wz--n- <29,98g 0 
[root@test-centos7-node1 ~]# lsblk
NAME MAJ:MIN RM GRÖSSE RO TYP MOUNTPUNKT
sda 8:0 0 50G 0 Festplatte 
├─sda1 8:1 0 2G 0 Teil /Boot
├─sda2 8:2 0 2G 0 Teil [SWAP]
└─sda3 8:3 0 46G 0 Teil /
sdb 8:16 0 50G 0 Festplatte 
├─sdb1 8:17 0 10G 0 Teil 
│ └─test-xxx 253:0 0 30G 0 lvm /mnt
├─sdb2 8:18 0 10G 0 Teil 
│ └─test-xxx 253:0 0 30G 0 lvm /mnt
└─sdb3 8:19 0 10G 0 Teil 
 └─test-xxx 253:0 0 30G 0 lvm /mnt
sr0 11:0 1 792M 0 rom 
[root@test-centos7-node1 ~]# df -h
Verwendete Dateisystemgröße Verfügbare Nutzung% Eingebunden auf
/dev/sda3 46 G 1,6 G 45 G 4 % /
devtmpfs 1,9 G 0 1,9 G 0 % /Entwickler
tmpfs 1,9 G 0 1,9 G 0 % /Entwickler/shm
tmpfs 1,9 G 8,6 M 1,9 G 1 %/Lauf
tmpfs 1,9 G 0 1,9 G 0 % /sys/fs/cgroup
/dev/sda1 2,0 G 135 M 1,9 G 7 % /boot
tmpfs 378M 0 378M 0 % /run/Benutzer/0
/dev/mapper/test-xxx 20 G 33 M 20 G 1 % /mnt
[root@test-centos7-node1 ~]

Hinweis: Sie können sehen, dass der Speicherplatz in den LVs hinzugefügt wurde. Der Befehl lvextend wird verwendet, um den Speicherplatz in der angegebenen VG zum angegebenen LV hinzuzufügen. Das obige Beispiel fügt den gesamten freien Speicherplatz in der VG zu /dev/test/xxx hinzu. Natürlich gibt es auch eine Situation, in der in der VG noch freier Speicherplatz vorhanden ist. Wir können lvresize verwenden, um die Größe von LV anzupassen. Aus den obigen Informationen können wir ersehen, dass sich der Speicherplatz des Einhängepunkts nicht vergrößert, wie in df gezeigt, nachdem wir den neuen Speicherplatz zu VG und LV hinzugefügt haben. Als Nächstes verwenden wir resize2fs, um das Dateisystem mit dem vergrößerten Speicherplatz zu synchronisieren.

[root@test-centos7-node1 ~]# resize2fs /dev/test/xxx 
resize2fs 1.42.9 (28. Dezember 2013)
resize2fs: Ungültige magische Zahl im Superblock beim Versuch, /dev/test/xxx zu öffnen
Es konnte kein gültiger Dateisystem-Superblock gefunden werden.
[root@test-centos7-node1 ~]# df -h
Verwendete Dateisystemgröße Verfügbare Nutzung% Eingebunden auf
/dev/sda3 46 G 1,6 G 45 G 4 % /
devtmpfs 1,9 G 0 1,9 G 0 % /Entwickler
tmpfs 1,9 G 0 1,9 G 0 % /Entwickler/shm
tmpfs 1,9 G 8,6 M 1,9 G 1 %/Lauf
tmpfs 1,9 G 0 1,9 G 0 % /sys/fs/cgroup
/dev/sda1 2,0 G 135 M 1,9 G 7 % /boot
tmpfs 378M 0 378M 0 % /run/Benutzer/0
/dev/mapper/test-xxx 20 G 33 M 20 G 1 % /mnt
[root@test-centos7-node1 ~]

Hinweis: Es scheint, dass dieser Befehl nicht funktioniert, da der Befehl resize2fs für Dateisysteme der ext-Serie gilt und xfs mit xfs_growfs angepasst werden muss

[root@test-centos7-node1 ~]# xfs_growfs /dev/test/xxx 
Metadaten=/dev/mapper/test-xxx isize=512 agcount=4, agsize=1309696 Blöcke
     = Sektenz=512 Attr=2, Projid32bit=1
     = crc=1 finobt=0 Spinoden=0
Daten = bsize=4096 Blöcke=5238784, imaxpct=25
     = sunit=0 swidth=0 Blöcke
Benennung =Version 2 bsize=4096 ascii-ci=0 ftype=1
Protokoll =intern, B-Größe = 4096, Blöcke = 2560, Version = 2
     = Sektenz=512 Sunit=0 Blöcke, Lazy-Count=1
Echtzeit = keine extsz=4096 Blöcke=0, rtextents=0
Datenblöcke geändert von 5238784 auf 7858176
[root@test-centos7-node1 ~]# df -h
Verwendete Dateisystemgröße Verfügbare Nutzung% Eingebunden auf
/dev/sda3 46 G 1,6 G 45 G 4 % /
devtmpfs 1,9 G 0 1,9 G 0 % /Entwickler
tmpfs 1,9 G 0 1,9 G 0 % /Entwickler/shm
tmpfs 1,9 G 8,6 M 1,9 G 1 %/Lauf
tmpfs 1,9 G 0 1,9 G 0 % /sys/fs/cgroup
/dev/sda1 2,0 G 135 M 1,9 G 7 % /boot
tmpfs 378M 0 378M 0 % /run/Benutzer/0
/dev/mapper/test-xxx 30 G 33 M 30 G 1 % /mnt
[root@test-centos7-node1 ~]

4. LV verkleinern (xfs-Dateisystem)

1) Demontieren Sie das montierte LV

[root@test-centos7-node1 ~]# df -h
Verwendete Dateisystemgröße Verfügbare Nutzung% Eingebunden auf
/dev/sda3 46 G 1,6 G 45 G 4 % /
devtmpfs 1,9 G 0 1,9 G 0 % /Entwickler
tmpfs 1,9 G 0 1,9 G 0 % /Entwickler/shm
tmpfs 1,9 G 8,6 M 1,9 G 1 %/Lauf
tmpfs 1,9 G 0 1,9 G 0 % /sys/fs/cgroup
/dev/sda1 2,0 G 135 M 1,9 G 7 % /boot
tmpfs 378M 0 378M 0 % /run/Benutzer/0
/dev/mapper/test-xxx 30 G 33 M 30 G 1 % /mnt
[root@test-centos7-node1 ~]# umount /mnt
[root@test-centos7-node1 ~]# df -h
Verwendete Dateisystemgröße Verfügbare Nutzung% Eingebunden auf
/dev/sda3 46 G 1,6 G 45 G 4 % /
devtmpfs 1,9 G 0 1,9 G 0 % /Entwickler
tmpfs 1,9 G 0 1,9 G 0 % /Entwickler/shm
tmpfs 1,9 G 8,6 M 1,9 G 1 %/Lauf
tmpfs 1,9 G 0 1,9 G 0 % /sys/fs/cgroup
/dev/sda1 2,0 G 135 M 1,9 G 7 % /boot
tmpfs 378M 0 378M 0 % /run/Benutzer/0
[root@test-centos7-node1 ~]

2) Festplattenerkennung erzwingen

[root@test-centos7-node1 ~]# xfs_repair -n /dev/test/xxx 
Phase 1 – Superblock finden und verifizieren …
Phase 2 - Verwendung des internen Protokolls
    - kein Protokoll...
    - freien Speicherplatz und Inode-Maps des Dateisystems scannen …
    - Root-Inode-Block gefunden
Phase 3 – für jede AG …
    - nicht verknüpfte AGI-Listen scannen (aber nicht löschen) …
    - bekannte Inodes verarbeiten und Inode-Erkennung durchführen …
    -agno=0
    -agno = 1
    -agno = 2
    -agno = 3
    - neu entdeckte Inodes verarbeiten …
Phase 4 – Suche nach doppelten Blöcken …
    - Einrichten einer doppelten Extent-Liste …
    - Suchen Sie nach Inodes, die doppelte Blöcke beanspruchen …
    -agno=0
    -agno = 1
    -agno = 2
    -agno = 3
Kein Änderungsflag gesetzt, Phase 5 wird übersprungen
Phase 6 – Inode-Konnektivität prüfen …
    - Dateisystem durchlaufen ...
    - Durchquerung abgeschlossen ...
    - Verschieben getrennter Inodes nach „Lost+Found“ ...
Phase 7 – Linkanzahl überprüfen …
Kein Änderungsflag gesetzt, Leerung und Beenden des Dateisystems werden übersprungen.
[root@test-centos7-node1 ~]

Hinweis: Das Dateisystem der ext-Serie kann mit dem Befehl e2fsck überprüft werden

3) Passen Sie die LV-Größe an

[root@test-centos7-node1 ~]# lvreduce -L -10G /dev/test/xxx 
 WARNUNG: Reduzierung des aktiven logischen Datenträgers auf <19,98 GiB.
 DIES KANN IHRE DATEN ZERSTÖREN (Dateisystem usw.)
Möchten Sie test/xxx wirklich reduzieren? [j/n]: j
 Größe des logischen Datenträgers Test/xxx von <29,98 GiB (3837 Extents) auf <19,98 GiB (2557 Extents) geändert.
 Die Größe des logischen Datenträgers test/xxx wurde erfolgreich geändert.
[root@test-centos7-node1 ~]# lvs
 LV VG Attr LSize Pool Herkunft Daten% Meta% Verschieben Log Cpy% Sync Konvertieren
 xxx-Test -wi-a----- <19,98 g                          
[root@test-centos7-node1 ~]# lvdisplay 
 --- Logisches Volumen ---
 LV-Pfad /dev/test/xxx
 LV-Name xxx
 VG-Namenstest
 LV-UUID uhZZaz-Odd9-ibwY-2Z1Z-ZmNY-eZF7-0lXERT
 LV Schreibzugriff Lesen/Schreiben
 LV-Erstellungshost, Zeit test-centos7-node1, 2020-01-06 10:32:42 -0500
 LV-Status verfügbar
 # öffnen 0
 LV-Größe <19,98 GiB
 Aktuelle LE 2557
 Segmente 2
 Zuordnung übernehmen
 Lesen Sie voraus Sektoren Auto
 - Derzeit auf 8192 festgelegt
 Blockgerät 253: 0
  
[root@Test-Centos7-Node1 ~]#

4) Mount

[root@test-centos7-node1 ~]# montage /dev /test /xxx /mnt
montieren:/dev/mapper/test-xxx: superblock kann nicht lesen
[root@Test-Centos7-Node1 ~]#

Hinweis: Hier wird ein Problem entdeckt. Der Befehl XFS -Dateisystemanpassung lautet XFS_Growfs, der nur den Anstellungsvorgang unterstützt. Wenn wir die Größe von LV anpassen, zerstören wir das Dateisystem. Daher ist es bedeutungslos, LV auf XFS zu verkleinern.

[root@test-centos7-node1 ~]# mkfs.xfs/dev/test/xxx -f
meta-data =/dev/test/xxx issiz = 512 AgCount = 4, Agsize = 1309184 BLKS
     = Sektenz=512 Attr=2, Projid32bit=1
     = crc = 1 finobt = 0, spärlich = 0
Daten = BSIZE = 4096 Blöcke = 5236736, IMAXPCT = 25
     = sunit=0 swidth=0 Blöcke
naming = Version 2 BSIZE = 4096 ASCII-ci = 0 FTTYPE = 1
log = interne log bSize = 4096 Blocks = 2560, Version = 2
     = Sektenz=512 Sunit=0 Blöcke, Lazy-Count=1
Echtzeit = keine extsz=4096 Blöcke=0, rtextents=0
[root@test-centos7-node1 ~]# montage /dev /test /xxx /mnt
[root@Test-Centos7-Node1 ~]# df -h
Verwendete Dateisystemgröße Verfügbare Nutzung% Eingebunden auf
/dev /sda3 46g 1,6g 45g 4% /
devtmpfs 1,9 G 0 1,9 G 0 % /Entwickler
tmpfs 1,9 G 0 1,9 G 0 % /Entwickler/shm
TMPFS 1,9G 8,6 m 1,9 g 1% /Lauf
tmpfs 1,9 G 0 1,9 G 0 % /sys/fs/cgroup
/dev /sda1 2,0 g 135 m 1,9g 7% /boot
tmpfs 378M 0 378M 0 % /run/Benutzer/0
/Dev/Mapper/Test-XXX 20G 33 m 20g 1%/mnt
[root@Test-Centos7-Node1 ~]

5. LV reduzieren (EXT -Serien -Dateisystem)

1) Die berittene LV entfalten

[root@Test-Centos7-Node1 ~]# df -th
Dateisystem Typ Größe Verwendet Verfügbare Nutzung% Eingebunden auf
/dev /sda3 xfs 46 g 1,6g 45g 4% /
devtmpfs devtmpfs 1,9g 0 1,9g 0% /dev
TMPFS TMPFS 1,9G 0 1,9G 0% /Dev /SHM
TMPFS TMPFS 1,9G 8,6 m 1,9 g 1% /Lauf
TMPFS TMPFS 1,9G 0 1,9G 0%/SYS/FS/CGROUP
/dev /sda1 xfs 2,0g 135m 1,9g 7% /start
TMPFS TMPFS 378m 0 378m 0%/run/user/0
/Dev/Mapper/Test-xxx ext4 20g 45m 19g 1%/mnt
[root@Test-Centos7-Node1 ~]# Umount /mnt
[root@Test-Centos7-Node1 ~]# df -th   
Dateisystem Typ Größe Verwendet Verfügbare Nutzung% Eingebunden auf
/dev /sda3 xfs 46 g 1,6g 45g 4% /
devtmpfs devtmpfs 1,9g 0 1,9g 0% /dev
TMPFS TMPFS 1,9G 0 1,9G 0% /Dev /SHM
TMPFS TMPFS 1,9G 8,6 m 1,9 g 1% /Lauf
TMPFS TMPFS 1,9G 0 1,9G 0%/SYS/FS/CGROUP
/dev /sda1 xfs 2,0g 135m 1,9g 7% /start
TMPFS TMPFS 378m 0 378m 0%/run/user/0
[root@Test-Centos7-Node1 ~]#

2) Erkennung von Festplatten erzwingen

[root@test-centos7-node1 ~]# e2fsck -f/dev/test/xxx 
E2FSCK 1.42.9 (28.-Dec-2013)
Pass 1: Überprüfen Sie Inodes, Blöcke und Größen
Pass 2: Überprüfung der Verzeichnisstruktur
Pass 3: Überprüfung der Verzeichniskonnektivität
Pass 4: Überprüfung der Referenzzahlen
Pass 5: Überprüfung der Zusammenfassung der Gruppenzusammenfassung Informationen
/dev/test/xxx: 11/1310720-Dateien (0,0% Nicht-kontious), 126322/5236736 Blöcke
[root@Test-Centos7-Node1 ~]#

HINWEIS: Wenn wir diesen Schritt nicht ausführen, werden wir zuerst auffordern, die Festplattenerkennung durchzuführen, wenn wir direkt zum nächsten Schritt gehen

3) Passen Sie die Dateisystemgröße an

[root@test-centos7-node1 ~]# resize2fs/dev/test/xxx 12g
Größe 2FS 1.42.9 (28.-DEC-2013)
Größe des Dateisystems an/dev/test/xxx auf 3145728 (4K) Blöcke.
Das Dateisystem für/dev/test/xxx ist jetzt 3145728 Blöcke lang.

[root@Test-Centos7-Node1 ~]#

4) Passen Sie die Größe von LV ein

[root@test-centos7-node1 ~]# lvReduce -l 12g/dev/test/xxx 
 Warnung: Reduzierung des aktiven logischen Volumens auf 12.00 Gib.
 DIES KANN IHRE DATEN ZERSTÖREN (Dateisystem usw.)
Möchten Sie wirklich Test/xxx reduzieren?
 Größe des logischen Volumentests/xxx änderte sich von <19,98 GIB (2557 Ausdehnung) auf 12,00 GIB (1536 Ausdehnung).
 Logischer Volumentest/xxx erfolgreich geändert.
[root@Test-Centos7-Node1 ~]# lvs
 LV VG Attr Lsize Pool Origin Data% Meta% Move Log CPY% Sync Convert
 xxx test-wi-a ----- 12.00g                          
[root@Test-Centos7-Node1 ~]#

HINWEIS: Der reduzierte Speicherplatz muss mit der Größe des Dateisystems übereinstimmen, oder der reduzierte Speicherplatz muss größer sein als der angepasste Speicherplatz des Dateisystems, um das Dateisystem nicht zu beschädigen, dass er nicht kleiner als der angepasste Speicherplatz des Dateisystems ist, wenn das Dateisystem reduziert wird, was die nachfolgende Aufstiegsmontage unmöglich ist.

5) Mount

[root@test-centos7-node1 ~]# montage /dev /test /xxx /mnt
[root@Test-Centos7-Node1 ~]# df -h
Verwendete Dateisystemgröße Verfügbare Nutzung% Eingebunden auf
/dev /sda3 46g 1,6g 45g 4% /
devtmpfs 1,9 G 0 1,9 G 0 % /Entwickler
tmpfs 1,9 G 0 1,9 G 0 % /Entwickler/shm
TMPFS 1,9G 8,6 m 1,9 g 1% /Lauf
tmpfs 1,9 G 0 1,9 G 0 % /sys/fs/cgroup
/dev /sda1 2,0 g 135 m 1,9g 7% /boot
tmpfs 378M 0 378M 0 % /run/Benutzer/0
/dev/mapper/test-xxx 12g 41m 12g 1%/mnt
[root@Test-Centos7-Node1 ~]#

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Problem der LVM-Festplattenerweiterung in Centos7 unter Linux
  • Detaillierte Beispiele für Linux-Festplattengeräte- und LVM-Verwaltungsbefehle
  • Detaillierte Erläuterung der nahtlosen horizontalen LVM-Festplattenerweiterung basierend auf Linux
  • Detaillierte Schritte zum Erweitern der LVM-Festplatte unter Linux

<<:  Mybatis implementiert Details zum Abfangen und Ändern von SQL-Abfragen

>>:  Konvertierung von virtuellem Dom in reales Dom mit Vue

Artikel empfehlen

Die Bilder in HTML werden direkt durch base64-kodierte Strings ersetzt

Kürzlich stieß ich auf eine Webseite, die zwar Bil...

So implementieren Sie Web-Stresstests mit Apache Bench

1. Einführung in Apache Bench ApacheBench ist ein...

Zusammenfassung der Spring Boot Docker-Verpackungstools

Inhaltsverzeichnis Spring Boot Docker Spring-Boot...

Detaillierte Erläuterung der Tomcat-Konfigurations- und Optimierungslösungen

Service.xml Die Konfigurationsdatei Server.xml wi...

Mehrere Methoden zur Implementierung von Karussellbildern in JS

Karussell Die Grundidee ist: Im großen Container ...

Einfache Implementierung von Vue Drag & Drop

In diesem Artikel wird hauptsächlich die einfache...

Konstruktions- und Nutzungsprozess des Vue3.0-Projekts

Inhaltsverzeichnis 1. Projektkonstruktion 2: Verz...

js realisiert horizontale und vertikale Slider

Als ich kürzlich an einem Übungsprojekt arbeitete...

Die Organisation W3C gibt Stilempfehlungen für HTML4

Dies ist die Stilempfehlung der W3C-Organisation f...