Der Logical Volume Manager
Ein vorhandenes System von normalen Partitionen auf den LVM umzustellen, ist ohne Neuinstallation möglich, erfordert aber ein Backup und Wiederherstellen. Dieser Artikel beschreibt das Vorgehen im Detail.
Vorwort
Dieser Artikel richtet sich an den erfahrenen Anwender, der sicher mit der Kommandozeile umzugehen weiß. In jedem Fall sollte eine Datensicherung durchgeführt werden, bevor man mit den Arbeiten beginnt. Der Autor hat den Installationsablauf mehrmals getestet und nach besten Wissen dokumentiert.
Was ist ein Logical Volume Manager überhaupt?
Der LVM ist eine logische Schicht zwischen der physikalischen Festplatte und dem Dateisystem. Das macht es überhaupt erst möglich, mehrere Festplatten einer logischen Disk zu zuordnen. Partitionen oder ganze Festplatten können zu einem Physical Volume (kurz PV) zusammengefasst werden. In einer Volume Group (kurz VG) sind ein oder mehrere PVs zusammengefasst.
Der entscheidende Vorteil gegenüber einem Linuxsystem ohne LVM ist nun die Erweiterbarkeit eines Dateisystems im laufenden Betrieb. Dies wird durch ein Logical Volume (kurz LV) erreicht, in dem ein beliebiges Linux-Dateisystem (ext2, ext3, reiserfs, xfs, jfs usw.) angelegt werden kann.
Die Schichten des Logical Volume Managers
Die Festplatten sda, sdb, sdc und sdd sind in einer Volumegruppe sysvg. Die Volumegruppe sysvg nimmt die logischen Volumes LVhome, LVtmp, LVusr und LVvar auf. Die einzelnen Logical Volumes enthalten wiederum die Dateisysteme, wie z.B. Lvhome, dessen Dateisystem unter /home im Verzeichnisbaum eingehängt ist.
Der LVM wird hauptsächlich im Serverbereich eingesetzt, da hier eine hohe Plattenkapazität mit vielen Disks die nötige Flexibilität bringt. Aber auch für einen normalen Desktop-PC lohnt die Installation des LVM, wenn man den vorhandenen Festplattenplatz effektiv aufteilen möchte oder mehr als eine Festplatte verbaut ist.
Installation des LVM
Einige Linux-Distributionen bieten schon bei der Installation eine Implementierung des LVM an, die sehr an die jeweiligen Gegebenheiten der Distribution angepasst ist und nicht auf andere übertragen werden kann. Beschrieben wird hier eine nachträgliche Installation auf einem konventionell installierten Linux mit zwei primären Partitionen.
Die nachfolgenden Schritte beschreiben die Aktionen, die durchzuführen sind.
- Vorhandene persönliche Daten sichern
- LVM installieren
- Verzeichnisse /home, /tmp, /usr und /var temporär auf externe Festplatte auslagern
- Größe der internen Festplattenpartition anpassen
- Zweite Partition für den LVM erstellen
- LVM einrichten
- Zurückkopieren der ausgelagerten Daten in die LVM-Partition
- Systemdateien anpassen
Ausgangssituation
Die Festplatte /dev/sda mit einer Gesamtkapazität von 15 GByte beinhaltet zwei primäre Partitionen, eine für das System mit 14 GByte und eine zweite, die als Swap dient, mit 1 GByte. Es sind keine freien Blöcke mehr auf der Festplatte vorhanden.
Endergebnis
Nach der LVM-Installation und einer teilweisen Neupartitionierung soll auf der Festplatte eine primäre Partition mit 1,5 GByte (sda1) für das Root-Dateisystem und eine zweite primäre (sda2) für den LVM mit 13,5 GByte vorhanden sein. In der zweiten primären Partition werden die Verzeichnisse /home, /tmp, /usr und /var jeweils in eigene Dateisysteme ausgelagert. Die Swap-Partition läuft ebenfalls unter LVM-Kontrolle.
Die Root-Partition kommt nicht unter LVM-Kontrolle, da dies einen unverhältnismäßig hohen Aufwand erzeugen würde und bei späteren Kernel-Updates ernsthafte Probleme bereiten könnte. Ebenso kann das Verzeichnis /boot keine LVM-Partition werden, weil der Bootmanager GRUB keine LVM-Geräte als Startpartition unterstützt.
Vorarbeiten
Um den LVM nachträglich zu installieren, benötigt man eine sogenannte Live-CD, wie z. B. Knoppix oder Sidux, die den LVM von Haus aus unterstützen. Im nachfolgenden Ablauf wird die Sidux Live-CD benutzt. Dies ist nötig, weil die Arbeiten bei einem laufenden System nicht durchgeführt werden können. Persönliche Daten bitte vor dieser Aktion unbedingt auf einem geeigneten Medium sichern. Eine zweite interne oder externe Festplatte ist ebenfalls nötig, um die Daten aus den Systemverzeichnissen vorübergehend auf einem temporären »Parkplatz« abzustellen.
Bevor man mit den eigentlichen Arbeiten beginnt, bitte nochmals kontrollieren, ob auf dem eigenen System bereits der LVM installiert ist. Dazu befragt man am besten den Paketmanager des Systems. Bei debianbasierten Systemen benutzt man dazu den Befehl dpkg.
# dpkg -l | grep -i lvm ii lvm2 2.02.39-2 The Linux Logical Volume Manager
Wenn der LVM installiert ist, bekommt man mit oben genannten Befehl eine ähnliche Ausgabe. Wenn nicht, bitte nachinstallieren mit dem systemeigenen Paketmanager. Bei einem debianbasierten System wie Sidux erledigt man dies so.
apt-get install lvm2
Nun steht den nachfolgenden Umbauarbeiten nichts mehr im Weg.
Livesystem starten
Nun legt man die Sidux Live-CD ein und bootet das System. Wenn das Livesystem hochgefahren ist, öffnet man eine Konsole und meldet sich als Root an.
Zuerst werden die Verzeichnisse, die man später in eigene Dateisysteme unter LVM-Kontrolle auslagern will, temporär auf die externe Festplatte (sdb) kopiert. Das sind die Verzeichnisse /home, /tmp, /usr und /var.
Mounten der Disk /dev/sda1 und /dev/sdb1:
mkdir /media/sda1 /media/sdb1 mount /dev/sda1 /media/sda1 mount /dev/sdb1 /media/sdb1
Kopieren der Verzeichnisse auf die externe Festplatte:

