Gentoo Logo

Gentoo: Installation von LVM2

Inhalt:

1.  Einleitung

Diese Anleitung basiert auf einem Beispiel mit zwei IDE-Festplatten. Das bedeudet, dass Sie wahrscheinlich die Festplatten, Partitionen und Partitionsgrößen an Ihre eigenen Bedürfnisse anpassen müssen.

Warnung: Dieses Dokument ist kein LVM2-Tutorial. Es dient lediglich als Erweiterung zur Gentoo Installation, wie sie im Handbuch, Teil 1 beschrieben wird. Lesen Sie die Gentoo Installationsanleitung bevor Sie mit der Installation beginnen.

Notiz: Für ein komplettes LVM-HOWTO besuchen Sie die Website http://tldp.org/HOWTO/LVM-HOWTO

Anforderungen

Wenn Sie eine neue Gentoo Installation durchführen, benötigen Sie eine bootbare CD mit LVM2-Unterstützung, wie zum Beispiel die Gentoo Installations-CD. Sie finden die Installations-CDs für die x86 Architektur auf einem unserer Mirror unter /releases/x86/current/installcd. Andere Architekturen werden möglicherweise ebenfalls unterstützt.

Wenn Sie LVM2 auf einem bereits laufendem System mit etwas freiem Speicherplatz verwenden möchten, müssen Sie das LVM2-Modul (dm-mod) aktivieren. Dieses Modul ist in den gentoo-sources. Das Kompilieren eines Kernel und das Aktivieren von LVM2 wird später in diesem Dokument beschrieben.

Nicht alle 2.4 Kernel, die von Gentoo bereitgestellt werden, liefern LVM2-Unterstützung.

Partitionen

Unser Beispiel hat zwei IDE-Festplatten und wird wie folgt partitioniert:

  • /dev/hda1 -- /boot
  • /dev/hda2 -- (swap)
  • /dev/hda3 -- /
  • /dev/hda4 -- Wird von LVM2 verwendet
  • /dev/hdb1 -- Wird von LVM2 verwendet

Wichtig: Passen Sie auf die Partitionsnamen auf, da man die as und bs beziehungsweise die Partitionsnummern leicht vertauschen kann. Eine falsche Eingabe kann eine wichtige Partition löschen. Sie wurden gewarnt!

OK, Zeit zu starten...

2.  Installation

Folgen Sie dem Handbuch, allerdings mit folgenden Änderungen in Kapitel 4. Vorbereitung der Festplatten

Verwenden Sie fdisk wie es im Handbuch beschrieben wird, aber verwenden Sie das oben beschriebene Partitionsschema nur als Beispiel. Es ist nur ein Beispiel, passen Sie es Ihren eigenen Bedürfnissen an.

Erzeugen Sie eine kleine physische /boot Partition (hda1). In diesem Beispiel wird /boot nicht von LVM2 verwaltet. Diese Partition beinhaltet den Bootloader und Ihre(n) Kernel. Eine 64MB-Partition sollte für einige Kernel ausreichen.

Erzeugen Sie eine Swap-Partition (hda2).

Erzeugen Sie eine / (root) Partition (hda3). Wenn Sie versuchen möchten, Ihre root-Partition unter LVM-Management zu stellen (was wir nicht empfehlen), sehen Sie sich den Link für ein Mini-HowTo im Ressourcenteil am Ende dieses Dokuments an. Die root-Partition muss nicht besonders groß sein, wenn Sie /opt /usr /home /var und /tmp in eine LVM2 Volume Group (vg) legen. In diesem Fall sollte 1GB ausreichen.

Notiz: Es ist nicht zu empfehlen, die folgenden Verzeichnisse in eine LVM2-Partition zu legen: /etc, /lib, /mnt, /proc, /sbin, /dev und /root. Auf diese Weise ist es immer noch möglich sich in das System (etwas verkrüppelt, aber als root immer noch etwas brauchbar) einzuloggen, falls etwas schief geht.

Vorausgesetzt, die /boot, swap- und root-Partitionen verbrauchen nicht den gesamten physikalischen Speicherplatz, erzeugen Sie auf dieser Festplatte eine vierte Partition und setzen Sie den Typ auf 8e (Linux LVM). Wenn Sie mehrere Festplatten haben die Sie mit LVM verwenden möchten, erzeugen Sie jeweils eine Parition des Typs 8e auf jeder weiteren.

Notiz: Betrachtet man die Größe aktueller Festplatten, möchten Sie wahrscheinlich nicht eine einzige große, sondern mehrere kleine Partitionen erstellen, die zu einer LVM2 Volume Group hinzugefügt werden. Das Vergrößern von Partitionen ist mit LVM2 leicht möglich. Nicht verwendete Partitionen können Sie auch außerhalb einer LVM2-Gruppe verwenden. Kurz gesagt, verwenden Sie Ihren Speicherplatz erst wenn Sie ihn brauchen. Zum Beispiel hat ein Mitarbeiter seine 160 Gb Festplatte in 8 Partitionen mit jeweils 20 Gb aufgeteilt.

Erzeugen Sie das Dateisystem auf /dev/hda1 und /dev/hda3 und erzeugen beziehungsweise aktivieren Sie die Swap-Partition auf /dev/hda2, wie es im Handbuch beschrieben wird.

Laden Sie das LVM2 dm-mod Modul.

Befehlsauflistung 2.1: Laden des LVM2-Moduls

# modprobe dm-mod

Editieren Sie /etc/lvm/lvm.conf vor dem Scannen und Aktivieren von LVM, um einige Geräte auszuschließen. Standardmäßig scannt LVM2 alle Laufwerke inklusive CDROM, was Fehlermeldungen verursachen kann. Im folgenden Beispiel wird die Zeile, die das Scannen aller Geräte erlaubt durch eine ersetzt, die nur das Scannen unserer zwei IDE-Festplatten erlaubt.

Befehlsauflistung 2.2: LVM aktivieren

(Nur das Scannen unserer Festplatten erlauben)
# nano -w /etc/lvm/lvm.conf
(Suchen Sie nach der folgenden Zeile)
    filter = [ "a/.*/" ]
(Ersetzen Sie sie mit folgender Zeile um /dev/hda und /dev/hdb zu
scannen und alles Andere zu ignorieren)
    filter = [ "a|/dev/hd[ab]|", "r/.*/" ]
(Speichern Sie die Datei ab und schließen Sie nano anschließend)
# vgscan
  Reading all physical volumes.  This may take a while...
  No volume groups found
(Alle vorher erstellten Volume Groups verfügbar machen)
# vgchange -a y

Vorbereiten der Partitionen:

Befehlsauflistung 2.3: Vorbereiten der Partitionen

# pvcreate /dev/hda4 /dev/hdb1
  No physical volume label read from /dev/hda4
  Physical volume "/dev/hda4" successfully created
  No physical volume label read from /dev/hdb1
  Physical volume "/dev/hdb1" successfully created

Erstellen einer Volume Group. Eine Volume Group ist die Kombination mehrerer physikalischer Einheiten zu einem einzigen logischen Gerät.

In unserem Beispiel sind /dev/hda1, /dev/hda2 und /dev/hda3 die /boot, swap- und root-Partitionen, daher fassen wir /dev/hda4 und /dev/hdb1 zusammen. Das kann mit einem einzigen Befehl durchgeführt werden, aber als Beispiel erzeugen wir zuerst eine Volume Group und werden diese anschließend erweitern.

Befehlsauflistung 2.4: Erzeugen und Erweitern einer Volume Group

(Erzeugen einer Volume Group genannt vg)
# vgcreate vg /dev/hda4
  /etc/lvm/backup: fsync failed: Invalid argument (Diese Warnung  ignorieren)
  Volume group "vg" successfully created
(Erweitern einer existierenden Volume Group)
# vgextend vg /dev/hdb1
  /etc/lvm/backup: fsync failed: Invalid argument (Diese Warnung jetzt und später ignorieren)
  Volume group "vg" successfully extended

Erzeugen Sie die Logical Volumes. Logical Volumes sind vergleichbar mit den Partitionen die Sie mit fdisk in einer nicht-LVM2-Umgebung erstellen. In unserem Beispiel erzeugen wir die folgenden Partitionen:

Verzeichnis Größe
/usr 10 GB
/home 5 GB
/opt 5 GB
/var 10 GB
/tmp 2 GB

Da wir LVM2 verwenden, müssen wir uns nicht viel Gedanken über Partitionsgrößen machen, da diese je nach Bedarf immer erweitert werden können.

Notiz: Wie Terje Kvernes erwähnt hat, ist es leichter Partitionen zu vergrößern als zu verkleinern. Daher sollten Sie mit kleinen Partitionen beginnen und diese bei Bedarf anschließend vergrößern.

Befehlsauflistung 2.5: Logical Volumes erzeugen und erweitern

# lvcreate -L10G -nusr  vg
  Logical volume "usr" created (Weitere ähnliche Meldungen nicht angezeigt)
# lvcreate -L5G  -nhome vg
# lvcreate -L5G  -nopt  vg
# lvcreate -L10G -nvar  vg
# lvcreate -L2G  -ntmp  vg
(Als Beispiel erweitern wir ein Logical Volume um 5 zusätzliche Gbyte)
# lvextend -L+5G /dev/vg/home

Erzeugen Sie die Dateisysteme auf den Logical Volumes wie Sie das auch bei normalen Partitionen tun würden. Wir verwenden ext3 auf den Logical Volumes, aber Sie können jedes Dateisystem ihrer Wahl verwenden.

Befehlsauflistung 2.6: Erzeugen der Dateisysteme

# mke2fs -j /dev/vg/usr
# mke2fs -j /dev/vg/home
# mke2fs -j /dev/vg/opt
# mke2fs -j /dev/vg/var
# mke2fs -j /dev/vg/tmp

Mounten Sie Ihre Logical Volumes als wären sie Partition und Ihre Partitionen wie es im Handbuch beschrieben wird. Ersetzen Sie /dev/hdxx mit /dev/vg/logical_volumename.

Befehlsauflistung 2.7: Mounten der Logical Volumes

(Stellen Sie sicher, dass Sie ihre root Partition wie im Handbuch
beschrieben gemountet haben.)
# mkdir /mnt/gentoo/usr
# mount /dev/vg/usr /mnt/gentoo/usr
# mkdir /mnt/gentoo/home
# mount /dev/vg/home /mnt/gentoo/home
# mkdir /mnt/gentoo/opt
# mount /dev/vg/opt /mnt/gentoo/opt
# mkdir /mnt/gentoo/var
# mount /dev/vg/var /mnt/gentoo/var
# mkdir /mnt/gentoo/tmp
# mount /dev/vg/tmp /mnt/gentoo/tmp

Notiz: Der Rest des Installationshandbuchs ist größtenteils nicht verändert, daher werden wir nur die Unterschiede behandeln.

Stellen Sie sicher, dass Sie Ihren Kernel mit LVM2-Unterstützung kompilieren. Nicht alle 2.4 Kernel unterstützen LVM2. Wählen Sie das LVM2-Modul wie folgt:

Befehlsauflistung 2.8: Auswählen des LVM2-Moduls bei einem 2.4.x Kernel

Multi-device support (RAID and LVM)  --->
  [*] Multiple devices driver support (RAID and LVM)
  < >  RAID support
(Beachten Sie, dass LVM grundsätzlich nicht aktiviert ist. Das war bei LVM1 der Fall)
  < >  Logical volume manager (LVM) support
  <M>  Device-mapper support
  < >   Mirror (RAID-1) support

Befehlsauflistung 2.9: Auswählen des LVM2-Moduls bei einem 2.6.x Kernel

Device Drivers  --->
 Multi-device support (RAID and LVM)  --->
   [*] Multiple devices driver support (RAID and LVM)
   < >   RAID support
   <M>   Device mapper support

Das kompilierte Modul wird dm-mod.ko genannt.

Nachdem Sie den Kernel kompiliert und dessen Module installiert haben, fügen Sie folgende Zeile in Ihre /etc/modules.autoload.d/kernel-{KV} ein, wobei {KV} für ihre Kernelversion steht (2.4 oder 2.6), damit das LVM2-Modul beim Booten Ihres Systems geladen wird:

Befehlsauflistung 2.10: Einfügen des LVM2 Moduls in /etc/modules.autoload.d/kernel-2.6

# nano -w /etc/modules.autoload.d/kernel-2.6
(Einfügen folgender Zeile)
dm-mod

Installieren Sie jetzt das LVM2-Paket.

Wichtig: Stellen Sie sicher, dass Ihr /usr/src/linux Link auf die Kernelquellen verweist, die Sie verwenden, da das LVM2-Ebuild vom device-mapper Ebuild abhängt, welches das Vorhandensein einer benötigten Quelldatei unter /usr/src/linux/include/linux überprüft.

Befehlsauflistung 2.11: Emergen des LVM2-Pakets

# emerge lvm2

Editieren Sie /etc/lvm/lvm.conf wie es zuvor beschrieben wurde. Die Datei, die Sie vorhin editiert haben ist Teil der Installationsumgebung und ist nach dem nächsten Neustart nicht mehr vorhanden. Dieses Mal editieren Sie die Datei innerhalb Ihrer neuen Gentoo Installation.

Wenn Sie Ihre /etc/fstab Datei editieren, folgen Sie dem Handbuch und fügen Sie ihre LVM2 Logical Volumes je nach Bedarf ein. Hier sind erneut einige Zeilen die für unser Beispiel benötigt werden:

Befehlsauflistung 2.12: Auszug aus /etc/fstab

/dev/hda1     /boot   ext3    noauto,noatime 1 2
/dev/hda2     none    swap    sw             0 0
/dev/hda3     /       ext3    noatime        0 1
# Logical volumes
/dev/vg/usr   /usr    ext3    noatime        0 2
/dev/vg/home  /home   ext3    noatime        0 2
/dev/vg/opt   /opt    ext3    noatime        0 2
/dev/vg/var   /var    ext3    noatime        0 2
/dev/vg/tmp   /tmp    ext3    noatime        0 2

Wenn Sie das Ende der Installation im Handbuch erreichen, vergessen Sie nicht alle ihre LVM2 Logical Volumes auszuhängen und um sicher zu gehen, führen Sie folgenden Befehl vor dem Neustart aus:

Befehlsauflistung 2.13: Herunterfahren von LVM2

# vgchange -a n

Starten Sie ihr System neu und alle Partitionen sollten sichtbar und gemountet sein.

3.  Weitermachen nach einem Reboot

Wenn Sie Ihre Gentoo Installation an einem Punkt unterbrochen haben und jetzt fortsetzen möchten, müssen Sie zuerst die Volume Device-Nodes erzeugen:

Befehlsauflistung 3.1: Reaktivieren der Volumes

# vgscan --mknodes

Bei Installations-CDs mit weniger aktuellen Tools müssen Sie stattdessen eventuell die Volumes reaktivieren:

Befehlsauflistung 3.2: Reaktivieren der Volumes

(Zuerst alle Volumes deaktivieren)
# vgchange -a n
(Alle Volumes exportieren)
# vgexport -a
(Alle Volumes importieren)
# vgimport -a
(Alle Volumes reaktivieren)
# vgchange -a y

4.  Ressourcen

5.  Danksagung

Danke an Thilo Bangert und Terje Kvernes für ihre Hilfe und Kommentare bei diesem Dokument.



Drucken

Seite aktualisiert 10. Februar 2009

Die Originalversion dieser Übersetzung wird nicht länger gepflegt

Zusammenfassung: Diese Anleitung beschreibt, wie man den Logical Volume Manager auf einem Gentoo System verwendet.

Avi Schwartz
Autor

Rajiv Manglani
Mitarbeiter

Xavier Neys
Bearbeiter

Stefan Kienzl
Übersetzer

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.