Wenn ich versuche, Folgendes auf dem KVM-Host zu tun:
# kpartx -av /dev/VolGroup00/kvm101_img
add map kvm101_img1 : 0 208782 linear /dev/VolGroup00/kvm101_img 63
add map kvm101_img2 : 0 125612235 linear /dev/VolGroup00/kvm101_img 208845
# mount /dev/mapper/kvm101_img1 /mnt
dann werde ich / boot partition gemountet. Aber ich erhalte eine Fehlermeldung, wenn ich dann Folgendes eingebe:
# mount /dev/mapper/kvm101_img2 /mnt
mount: you must specify the filesystem type
Hier ist ein fdisk-Layout auf dem Gastcomputer:
# fdisk -l
Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 7832 62806117+ 8e Linux LVM
Ist es möglich, eine Root-Partition auf dem Gast zu finden und auf dem Host-System bereitzustellen?
linux
virtualization
lvm
kvm-virtualization
Evolver
quelle
quelle
Antworten:
Scheint, als hätte ich endlich herausgefunden, wie ich Dinge tun soll, die ich brauchte. Folgendes habe ich getan:
Wenn VolGroup-Namen in Gast- und Hostsystemen identisch sind, müssen Sie die Gast-VolGroup umbenennen
uuid von VolGroups können Sie einchecken
vgdisplay
. Der Trick besteht also darin, die Gast-VolGroup zu aktivieren:Danach ist es einfach zu montieren:
Schließlich ist der Rückwärtsprozess:
Der letzte Befehl bereinigt den LVM-Cache und entfernt das von kpartx erstellte physische Volume aus LVM.
quelle
Ich bin froh, dass Sie es für Ihre Situation herausgefunden haben.
Im allgemeineren Fall kann das Gastlaufwerk in verschiedenen Formaten wie qcow, qcow2 usw. vorliegen, sodass Sie nicht direkt daran arbeiten können. In diesem Fall können Sie Folgendes verwenden:
Dann können Sie auf / dev / nbd0 als unformatiertes Gastlaufwerk zugreifen. Um die Verwendung dieses Geräts zu beenden, sollten Sie Folgendes ausführen:
Wenn andererseits das Gastlaufwerk im Rohformat wäre, würden Sie losetup verwenden:
Dies würde das erste verfügbare Schleifengerät finden und verwenden (z. B. / dev / loop0). So beenden Sie die Verwendung:
Danach können Sie die in Ihrer Antwort beschriebene Prozedur kpartx / vgscan / lvscan / mount ausführen.
quelle
Sie können dies mit guestfish tun - http://libguestfs.org/guestfish.1.html
quelle
qemu-img info /path/to/image
. Wenn das Feld Typ nicht "RAW" ist, kann ein Betriebssystem dieses Image auf keinen Fall als Partition bereitstellen, da es als qemu-spezifische virtuelle Festplatte formatiert ist. Dies ist, was Guestfish befasst, es ist nicht nur ein einfaches MontagewerkzeugEs könnte einfacher sein, nur
guestfish
das libguestfs- Paket zu verwenden, das alle nervigen Details für Sie herausarbeiten sollte, anstatt zu versuchen, es manuell zu tunquelle