LVM Logical Volume Manager

Aus Doku-Wiki
Zur Navigation springenZur Suche springen

Anmerkung

LVM ist die Abkürzung für »Logical Volume Manager«. LVM lässt sich eine logische Schicht zwischen Dateisystem und der Partition einer physikalischen Festplatte schieben. So ist es möglich, ein Dateisystem über mehrere Partitionen und Festplatten zu strecken.

Version

  • Debian 5.0 Lenny
  • LVM (Debian origina Pakete)

Links

  • Linux LVM HOWTO
    • Diese Doku wurde mit Hilfe des Linux LVM HOWTO erstellt.
    • Teile der Texte sind aus dem LINUX LVM HOWTO kopiert

Installation

aptitude install lvm2

Konfiguration

/etc/lvm/lvm.conf

Als erstes müssen wir die Konfiguration (/etc/lvm/lvm.conf) von LVM2 anpassen, da sie standardmässig jedes Gerät zulässt.

vi /etc/lvm/lvm.conf

Nun die Zeile

filter = [ "a/.*/" ]

durch diese ersetzen.

filter = [ "a|^/dev/sd[bcdefghijklmnopqrst]|", "r/.*/" ]

Was passiert hier? In diesem Beispiel werden die Geräte sdb bis sdt zugelassen. Hier noch ein paar Beispiele:

filter = [ "a|^/dev/sdb|", "r/.*/" ]   // nur das Geräte sdb
filter = [ "a|^/dev/hda7|", "r/.*/" ]  // nur das Geräte hda7

Einrichten

  • LVM basiert auf drei Stufen:
  1. Physical Volume (Festplatte, Partition)
  2. Volume Group (Gruppe mehrerer Festplatten, Partitionen)
  3. Logical Volume [Virtuelle Partition die aus mehreren Volume Groups bestehen kann]

Physical Volume einrichten

Partition anlegen und formatieren

  • Hier wird eine (oder auch mehrere) Partition(en) mit dem Type 8e (LVM) angelegt.
cfdisk /dev/sdb

Nachdem der Schritt für alle verwendet Partitionen durchgeführt wurde, können diese eingebunden werden.

vgscan

Mit vgscan werden vorhandene Partitionen gesucht.

vgscan -v

Pysical Volume anlegen

  1. pvcreate /dev/sdb1
 Physical volume "/dev/sdb1" successfully created
  1. pvcreate /dev/sdc1
 Physical volume "/dev/sdc1" successfully created

Volume Group einrichetn

Die Volume-Group stellt ein Speicherpool dar in dem Pysical Volumes eingebunden werden. Beim anlegen wird ein Name für die Volume-Group vergeben.

# vgcreate volgr1 /dev/sdb1 /dev/sdc1
  Volume group "volgr1" successfully created
# vgdisplay /dev/volgr1
 --- Volume group ---
 VG Name               volgr1
 System ID
 Format                lvm2
 Metadata Areas        2
 Metadata Sequence No  2
 VG Access             read/write
 VG Status             resizable
 MAX LV                0
 Cur LV                1
 Open LV               1
 Max PV                0
 Cur PV                2
 Act PV                2
 VG Size               3,99 GB
 PE Size               4,00 MB
 Total PE              1022
 Alloc PE / Size       250 / 1000,00 MB
 Free  PE / Size       772 / 3,02 GB
 VG UUID               4qdUw9-oPce-j8aO-E0iQ-rkIh-6ITV-ZqCFl2

Logical Volume

LV einrichetn

Nun kann man mit der gesamten Volume Group volg1, oder auch nur mit einem Teil davon ein Logical Volume erstellen. Zum Kommando lvcreate muss man die gewünschte Größe, den Namen von dem Logical Volume und die Volume Group angeben. Hier wird der Name logv1 und die Größe 1000 MByte verwendet:

# lvcreate -n logvol1 -L 1000M volgr1
 Logical volume "logvol1" created
  • Dieses Logical Volume muss nun noch formatiert und in das Filesystem eingebunden werden.

LV formatieren und mounten

Wie bei herkömmliche Partitionen wird nun das LV formatiert. Hier z.B mitext3:

# mkfs.ext3 /dev/volgr1/logvol1

Jetzt kann das LV in das Filesystem eingebunden werden:

# mount /dev/volgr1/logvol1 /testvolume/

Umgang mit LVM

vgdisplay

# vgdisplay /dev/volgr1
 --- Volume group ---
 VG Name               volgr1
 System ID
 Format                lvm2
 Metadata Areas        2
 Metadata Sequence No  2
 VG Access             read/write
 VG Status             resizable
 MAX LV                0
 Cur LV                1
 Open LV               1
 Max PV                0
 Cur PV                2
 Act PV                2
 VG Size               3,99 GB
 PE Size               4,00 MB
 Total PE              1022
 Alloc PE / Size       250 / 1000,00 MB
 Free  PE / Size       772 / 3,02 GB
 VG UUID               4qdUw9-oPce-j8aO-E0iQ-rkIh-6ITV-ZqCFl2