CentOS 5: Logical Volume Manager (LVM)
1. Einleitung
Die Abkürzung LVM steht für Logical Volume Manager. Mit dem LVM können mehrere Physical Volumes (Festplatten) zu einer Volume Group zusammengefasst werden in welcher dann die Logical Volumes (Partitionen) erstellt werden.
Eine Volume Group kann jederzeit durch zusätzliche Physical Volumes erweitert und auch verkleinert werden. Auch die Größe der Logical Volumes kann dynamisch geändert werden (je nach verwendetem Dateisystem).
2. Physical Volume einrichten
Als ersten Schritt müssen Sie auf den Festplatten Partitionen erstellen welche die einzelnen Physical Volumes darstellen. Dazu starten Sie fdisk und geben die Festplatte an auf welcher Sie die Partition erstellen wollen.
Hinweis: Falls Sie einen Datenträger mit mehr als 2TB partitionieren wollen, müssen Sie parted anstelle von fdisk einsetzen. Lesen Sie dazu die Anleitung Datenträger mit mehr als 2TB für LVM partitionieren.
[root@centos5 ~]# fdisk /dev/sdb
Legen Sie wie folgt eine neue primäre Partition an und ändern die Partitions-ID auf Linux LVM.
Die Anzahl der Zylinder für diese Platte ist auf 91201 gesetzt.
Daran ist nichts verkehrt, aber das ist größer als 1024 und kann
in bestimmten Konfigurationen Probleme hervorrufen mit:
1) Software, die zum Bootzeitpunkt läuft (z. B. ältere LILO-Versionen)
2) Boot- und Partitionierungssoftware anderer Betriebssysteme
(z. B. DOS FDISK, OS/2 FDISK)
Befehl (m für Hilfe): n
Befehl Aktion
e Erweiterte
p Primäre Partition (1-4)
p
Partitionsnummer (1-4): 1
Erster Zylinder (1-91201, Vorgabe: 1):
Benutze den Standardwert 1
Letzter Zylinder oder +Größe, +GrößeK oder +GrößeM (1-91201, Vorgabe: 91201):
Benutze den Standardwert 91201
Befehl (m für Hilfe): t
Partition 1 ausgewählt
Hex code (L um eine Liste anzuzeigen): 8e
Der Dateisystemtyp der Partition 1 ist nun 8e (Linux LVM)
Befehl (m für Hilfe): p
Platte /dev/sdb: 750.1 GByte, 750156374016 Byte
255 heads, 63 sectors/track, 91201 cylinders
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
Gerät boot. Anfang Ende Blöcke Id System
/dev/sdb1 1 91201 732572001 8e Linux LVM
Befehl (m für Hilfe): w
Die Partitionstabelle wurde verändert!
Rufe ioctl() um Partitionstabelle neu einzulesen.
Synchronisiere Platten.
Daran ist nichts verkehrt, aber das ist größer als 1024 und kann
in bestimmten Konfigurationen Probleme hervorrufen mit:
1) Software, die zum Bootzeitpunkt läuft (z. B. ältere LILO-Versionen)
2) Boot- und Partitionierungssoftware anderer Betriebssysteme
(z. B. DOS FDISK, OS/2 FDISK)
Befehl (m für Hilfe): n
Befehl Aktion
e Erweiterte
p Primäre Partition (1-4)
p
Partitionsnummer (1-4): 1
Erster Zylinder (1-91201, Vorgabe: 1):
Benutze den Standardwert 1
Letzter Zylinder oder +Größe, +GrößeK oder +GrößeM (1-91201, Vorgabe: 91201):
Benutze den Standardwert 91201
Befehl (m für Hilfe): t
Partition 1 ausgewählt
Hex code (L um eine Liste anzuzeigen): 8e
Der Dateisystemtyp der Partition 1 ist nun 8e (Linux LVM)
Befehl (m für Hilfe): p
Platte /dev/sdb: 750.1 GByte, 750156374016 Byte
255 heads, 63 sectors/track, 91201 cylinders
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
Gerät boot. Anfang Ende Blöcke Id System
/dev/sdb1 1 91201 732572001 8e Linux LVM
Befehl (m für Hilfe): w
Die Partitionstabelle wurde verändert!
Rufe ioctl() um Partitionstabelle neu einzulesen.
Synchronisiere Platten.
Sollten Sie mehrere Festplatten zusammenschließen wollen, dann wiederholen Sie diese Schritte für jede weitere HDD.
Aus den erstellten Partitionen werden nun mit pvcreate die Physical Volumes erstellt.
[root@centos5 ~]# pvcreate /dev/sdb1
Wenn Sie diesen Befehl nicht für jede Partition wiederholen wollen, können Sie auch alle gewünschten Partitionen auf einmal angeben.
[root@centos5 ~]# pvcreate /dev/sdb1 /dev/sdc1
3. Physical Volume anzeigen
Wenn Sie überprüfen wollen welche Physical Volumes in Ihrem System existieren, können Sie diese mit dem folgenden Befehl suchen und anzeigen lassen.
[root@centos5 ~]# pvscan
Eine Statistik zu den Physical Volumes können Sie sich durch pvs anzeigen lassen.
[root@centos5 ~]# pvs
Nähere Details zu einem Physical Volume können Sie mit dem folgenden Befehl anzeigen lassen.
[root@centos5 ~]# pvdisplay /dev/sdb1
4. Volume Group einrichten
Nachdem die Physical Volumes erstellt wurden, können Sie diese zu einer Volume Group zusammenfassen. Dazu wird der Befehl vgcreate verwendet welchem ein Name für die Volume Group und die einzelnen Physical Volumes übergeben werden.
[root@centos5 ~]# vgcreate VolGroup00 /dev/sdb1 /dev/sdc1
5. Volume Group anzeigen
Wie bei den Physical Volumes könne Sie auch hier überprüfen welche Volume Groups in Ihrem System existieren.
[root@centos5 ~]# vgscan
Eine Statistik zu den Volume Groups können Sie sich durch vgs anzeigen lassen.
[root@centos5 ~]# vgs
Details zu einer Volume Group können Sie mit vgdisplay anzeigen.
[root@centos5 ~]# vgdisplay VolGroup00
6. Logical Volume einrichten
In der soeben erstellten Volume Group können Sie jetzt ein oder mehrere Logical Volumes erstellen. Dem Befehl lvcreate müssen Sie dazu einen Namen für das Logical Volume, die gewünschte Größe und die Volume Group in welcher das Logical Volume erstellt werden soll angeben.
[root@centos5 ~]# lvcreate -n LogVol00 -L 10G VolGroup00
Damit Sie Dateien auf dieses Logical Volume speichern können, müssen Sie noch ein Dateisystem anlegen. Wenn Sie die Größe des Logical Volumes nachträglich ändern wollen, sollten Sie ext2 oder ext3 als Dateisystem verwenden.
[root@centos5 ~]# mkfs -t ext3 /dev/VolGroup00/LogVol00
Sobald das Dateisystem angelegt wurde, können Sie das Logical Volume mounten.
[root@centos5 ~]# mount /dev/VolGroup00/LogVol00 /mnt
7. Logical Volume anzeigen
Die Logical Volumes in Ihrem System können Sie mit dem folgenden Befehl suchen und anzeigen lassen.
[root@centos5 ~]# lvscan
Die Statistik zu den Logical Volumes können Sie sich durch lvs anzeigen lassen.
[root@centos5 ~]# lvs
Weitere Details zu einem Logical Volume zeigt Ihnen der folgende Befehl.
[root@centos5 ~]# lvdisplay /dev/VolGroup00/LogVol00
8. Logical Volume vergrößern
Wie bereits erwähnt, kann ein Logical Volume nachträglich vergrößert und verkleinert werden. Um ein Logical Volume zu vergrößern müssen Sie dieses zuerst aus der Verzeichnisstruktur entfernen.
[root@centos5 ~]# umount /data
Anschließend vergrößern Sie das Logical Volume mit lvextend. Als Option müssen Sie die neue Größe und den Namen des Logical Volumes angeben. Mit dem folgenden Befehl wird das erstellte Logical Volume mit 10GB auf 20GB vergrößert.
[root@centos5 ~]# lvextend -L 20G /dev/VolGroup00/LogVol00
Bevor Sie das Dateisystem vergrößern, sollten Sie dieses mit e2fsck auf Fehler überprüfen.
[root@centos5 ~]# e2fsck -f /dev/VolGroup00/LogVol00
Das Dateisystem wird jetzt noch mit resize2fs an die neue Größe der virtuellen Partition angepasst.
[root@centos5 ~]# resize2fs /dev/VolGroup00/LogVol00
Sobald der Vorgang abgeschlossen wurde, können Sie das Logical Volume wieder mounten.
[root@centos5 ~]# mount -t ext3 /dev/VolGroup00/LogVol00 /mnt
9. Logical Volume verkleinern
Die Vorgehensweise beim Verkleinern eines Logical Volumes ist sehr ähnlich wie beim Vergrößern. Allerdings müssen Sie hier zuerst das Dateisystem und erst danach das Logical Volume verkleinern.
Bevor Sie damit beginnen, müssen Sie das Dateisystem unmounten.
[root@centos5 ~]# umount /data
Danach sollten Sie das Dateisystem auf eventuelle Fehler überprüfen.
[root@centos5 ~]# e2fsck -f /dev/VolGroup00/LogVol00
Mit dem Befehl resize2fs wird die Größe des Dateisystems geändert. Hier müssen Sie aber zusätzlich die neue Größe des Dateisystems angeben.
[root@centos5 ~]# resize2fs /dev/VolGroup00/LogVol00 10G
Anschließend wird noch das Logical Volume verkleinert.
[root@centos5 ~]# lvreduce -L 10G /dev/VolGroup00/LogVol00
Hinweis: Das Logical Volume darf nicht kleiner sein als das Dateisystem da es sonst zu Datenverlust kommt.
Nachdem das Logical Volume verkleinert wurde, können Sie dieses wieder mounten.
[root@centos5 ~]# mount -t ext3 /dev/VolGroup00/LogVol00 /data
10. Logical Volume umbenennen
Mit dem Befehl lvrename können Sie ein bestehendes Logical Volume umbenennen.
[root@centos5 ~]# lvrename /dev/VolGroup00/LogVol00 /dev/VolGroup00/RenamedLogVol00
Alternativ zu dieser ausführlichen Schreibweise können Sie auch die folgende Syntax verwenden.
[root@centos5 ~]# lvrename VolGroup00 LogVol00 RenamedLogVol00
11. Logical Volume entfernen
Ein Logical Volume können Sie mit lvremove löschen. Als Parameter muss nur der Logical Volume Pfad angegeben werden.
[root@centos5 ~]# lvremove VolGroup00/LogVol00
12. Volume Group erweitern
Mit vgextend können auch nachträglich weitere Physical Volumes zu einer bestehenden Volume Group hinzugefügt werden.
[root@centos5 ~]# vgextend VolGroup00 /dev/sdd1
13. Volume Group verkleinern
Wenn Sie ein Physical Volume aus einer Volume Group entfernen wollen, müssen Sie zuerst die Logical Volumes die sich auf dieser befinden auslagern oder löschen. Mit pvmove werden alle Logical Volumes einer Festplatte entweder auf eine neue Festplatte in der gleichen Volume Group übertragen oder auf den freien Speicherplatz innerhalb der ganzen Volume Group verteilt.
Mit dem folgenden Befehl wird der Inhalt von /dev/sdc1 auf den freien Bereich innerhalb der Volume Group verteilt.
[root@centos5 ~]# pvmove /dev/sdc1
Wenn Sie eine neue Festplatte in die Volume Group eingebunden haben, können Sie die betroffenen Logical Volumes direkt auf das neue Physical Volume verschieben.
[root@centos5 ~]# pvmove /dev/sdc1 /dev/sdd1
Nachdem Sie das Physical Volume geleert haben, können Sie dieses wie folgt aus der Volume Group entfernen.
[root@centos5 ~]# vgreduce VolGroup00 /dev/sdc1
14. Volume Group umbenennen
Bevor Sie eine Volume Group umbenennen können, müssen Sie alle Logical Volumes in der Volume Group deaktivieren. Dazu rufen Sie für jedes Logical Volume in der Volume Group den folgenden Befehl auf.
[root@centos5 ~]# lvchange -an /dev/VolGroup00/LogVol00
Anschließend wird die Volume Group wie folgt umbenannt.
[root@centos5 ~]# vgrename /dev/VolGroup00 /dev/RenamedVolGroup00
Die folgende alternative Syntax führt zum selben Ergebnis.
[root@centos5 ~]# vgrename VolGroup00 RenamedVolGroup00
Nachdem die Volume Group umbenannt wurde, müssen Sie die deaktivierten Logical Volumes wieder aktivieren.
[root@centos5 ~]# lvchange -ay /dev/VolGroup00/LogVol00
15. Volume Group entfernen
Mit vgremove können Sie eine ganze Volume Group entfernen. Dazu müssen Sie nur den Namen der Volume Group angeben.
[root@centos5 ~]# vgremove VolGroup00
16. Physical Volume entfernen
Ein freies Physical Volume wird mit pvremove entfernt.
[root@centos5 ~]# pvremove /dev/sdc1
Nachdem das Physical Volume entfernt wurde, können Sie gegebenenfalls die Partition löschen und die Festplatte aus dem System entfernen.
Dieser Eintrag wurde am 30.07.2007 erstellt und zuletzt am 24.01.2016 bearbeitet.
Direkter Link zu dieser Seite: http://www.gtkdb.de/index_33_574.html
[ Zur Startseite ] [ Zur Kategorie ]
© 2004-2021 by Georg Kainzbauer