Muss man in einem System das LVM nutzt die Festplatte wechseln hilft Knoppix bei der Migration. Prinzipiell kann man einfach direkt die Partitionen von einer auf die andere Platte kopieren, möchte man aber diese Gelegenheit nutzen um das die Festplatte neu aufzuteilen, z.B. LVM nur noch für die Distribution zu verwenden während der Rest in einem RAID landet, muss man sich damit beschäftigen wie man LVM unter Knoppix nutzt.

Wie auch RAID nutzt LVM den Device Mapper. Dieser wird bei Knoppix, das ja eigentlich keine Festplatte verwendet, nicht automatisch geladen. Dies lässt sich aber leicht von Hand nachholen.

modprobe md

Nun sollte man die physikalischen Volume Groups suchen auf denen sich die logischen Volumes befinden.

vgscan --mknodes

Diese lassen sich nun mit mit vgchange aktivieren.

vgchange -a y

Jetzt lassen sich auch die logischen Volumes anzeigen.

lvscan

Dies erzeugt auch die notwendigen Device-Dateien, so dass man die darauf befindlichen Dateisysteme anschließend mounten kann. In meinem Fall das alte /- und das alte /local-Dateisystem, welche sich auf den logischen Volumes root und local befinden. Diese sind gehören zur Gruppe system.

mkdir /media/oldroot
mkdir /media/oldlocal
mount /dev/system/root /media/oldroot
mount /dev/system/local /media/oldlocal

Um die Dateien auf das neue Dateisystem zu schieben muss auf der Zielfestplatte erst das physische Volume erstellt werden. Die dafür zuvor notwendige Partitionierung geschieht am einfachsten mit YaST noch aus dem alten laufenden System bevor man den Umzug startet.

pvcreate /dev/sdc2

Auf dem physischen Volume lässt sich dann die neue Volume-Group erstellen. Ich verwende den Namen noraid mir selbst zu verdeutlichen auf dieser Gruppe keine wichtigen Daten abzulegen.

vgcreate noraid /dev/sdc2

Auf dieser neuen Gruppe können nun logische Volumes angelegt werden. In diesem Fall wieder root und local. Mit -L wird hierbei die Größe des Volumes angegeben.

lvcreate -n root -L 20G noraid
lvcreate -n local -L 40G noraid

Nun müssen auf den Volumes Dateisysteme angelegt werden. In meinem Fall ext3 mit den Standardeinstellungen.

mkfs.ext3 /dev/noraid/root
mkfs.ext3 /dev/noraid/local

Die neu erstellten Dateisysteme lassen sich nun mounten.

mkdir /media/newroot
mkdir /media/newlocal
mount /dev/noraid/root /media/newroot
mount /dev/noraid/local /media/newlocal

Jetzt können wir die Dateien von der alten Platte auf die neue Kopieren. Hierbei sorgt --archive dafür, dass die Metadaten der kopieren Dateien wie Zugriffs- und Erstellungszeiten, Berechtigungen usw. nicht ändern und symbolische Links als solche erhalten bleiben.

cp --archive /media/oldroot/* /media/newroot/
cp --archive /media/oldlocal/* /media/newlocal/

Ist der Vorgang beendet, was durchaus eine Weile dauern sollte, sollte man die Dateisysteme wieder unmounten und anschließend mit vgchange LVM wieder anhalten.

umount /media/oldroot
umount /media/oldlocal
umount /media/newroot
umount /media/newlocal

vgchange -a n

Eine sehr gute Referenz zum zu LVM ist das Linux LVM HOWTO.