Migrieren von einer virtuellen Maschine (VM) zu einem physischen System

115

Aka: Wie kann ich eine .vdi oder .vmdk in eine reale Installation auf einer physischen Festplatte konvertieren?

Ist es möglich / möglich, eine Virtual Machine-Installation von Ubuntu auf eine physische Maschine zu migrieren? Wenn möglich, wie schwierig wäre dies zu erreichen und welche Schritte müsste ich unternehmen, um mich auf die Migration vorzubereiten?

Ich möchte einige Tests auf einer VM durchführen und wenn es funktioniert, migrieren Sie dieses System auf physische Hardware, anstatt alles neu zu installieren. Ist das möglich?

    
dting 29.03.2011, 11:42
quelle

5 Antworten

90

Ja, das ist möglich. Es ist nicht einmal das schwer, es dauert nur eine Weile, eine Ubuntu LiveCD, sticky-back-plastic und eine externe USB-Festplatte (wenn Sie nicht mehr als eine interne Festplatte haben).

Vorbereitender Schritt: Konvertieren Sie den Datenträger in etwas Brauchbares

Sowohl VMWare als auch VirtualBox (unter anderem) verwenden Disk-Formate, die sich nicht gut dafür eignen, direkt auf die Festplatte geschrieben zu werden. Sie können aber ich persönlich finde es bequemer, es zuerst auf ein intermediäres Standardbild zu schreiben. Sie können dies von Ihrem aktuellen System aus tun, ohne auf eine LiveCD zu booten.

  • Laden Sie ein Terminal und feuern Sie ein:

    cd /media/wherever-the-image-is/
    
    # for VMWare
    sudo apt-get install qemu-kvm
    qemu-img convert your-vmware-disk.vmdk -O raw disk.img
    
    # For VirtualBox
    VBoxManage internalcommands converttoraw your-virtualbox-disk.vdi /dev/sdX
    
  • Verschiebe /media/wherever-the-image-is/disk.img irgendwo, wo du nicht schreiben willst. Wenn Sie vorhaben, es auf den Datenträger zu schreiben, auf dem es sich gerade befindet, sollten Sie es auf eine separate interne Festplatte oder auf eine externe Festplatte legen, die am schlimmsten wird.

  • Die folgenden Anweisungen gehen davon aus, dass Sie sie in /media/dave/disk.img ( dave ist eine externe USB-Festplatte) verschoben haben

  • Bevor Sie ernsthaft schreiben, stellen Sie sicher, dass Sie Backups haben . Es ist ein Klischee zu sagen, aber ein Tippfehler und es gibt eine sehr reale Möglichkeit, Ihr System zu vernichten. Angenommen, die Dinge werden schief gehen und vorbereitet sein. CloneZilla kann Ihnen helfen, ganze Datenträgersicherungen zu erstellen, wenn Sie irgendwo diese Daten speichern möchten.

Schreiben Sie das Bild auf eine eigene Festplatte

Du wirst so etwas machen wollen. Dies setzt voraus, dass Sie eine ganze Festplatte überschreiben werden. Wenn Sie eine Windows-Installation neben der Seite ausführen möchten, befolgen Sie diese Anweisungen nicht! Springe nach den Kugeln.

  • Starten Sie eine Ubuntu Live CD und klicken Sie auf Ubuntu ausprobieren.

  • Richten Sie den Ort ein, an dem Ihr vmdk-Image gespeichert wird (z. B. die externe USB-Festplatte als /media/dave ). Stellen Sie nicht den Ort bereit, an den Sie schreiben möchten.

  • Dann gehen wir zur Arbeit:

    sudo dd if=/media/dave/disk.img of=/dev/sdX
    

    Sie möchten sdX durch den korrekten Pfad zu Ihrer Zielfestplatte ersetzen. Das sudo Passwort ist leer, drücken Sie einfach Return.

  • Sie können dann gparted oder etwas anderes öffnen und Sie sollten Ihre Ubuntu-Partition auf dem Datenträger sehen. Sie sollten in der Lage sein, es zu erweitern.

Schreiben Sie das Image auf einen Datenträger neben einem anderen Betriebssystem

Dies ist vielleicht eine völlig sicherere Art, Dinge zu tun. Die Idee ist sehr ähnlich, abgesehen davon, dass Sie eine ordnungsgemäße Installation von Ubuntu vornehmen und dann einfach über die Dateien von disk.img synchronisieren.

  • Ihre LiveCD muss diesmal dieselbe Version von Ubuntu sein wie Ihre virtuelle Installation. Starten Sie die Live-CD und klicken Sie erneut auf Installieren.

  • Folgen Sie dem Installationsprogramm, um die Dinge so zu verteilen, wie Sie es für richtig halten. Etwa 10 Minuten später werden Sie installiert und Sie werden aufgefordert, den Computer neu zu starten. Starten Sie nicht neu. Es spielt keine Rolle, wenn Sie es versehentlich tun, stellen Sie einfach sicher, dass Sie wieder in der LiveCD für die nächsten Anweisungen sind.

  • Mounten Sie die Partition Ihrer neuen Installation und Ihre externe Festplatte, auf der Sie disk.img gespeichert haben (klicken Sie einfach doppelt auf Nautilus).

  • Mounten Sie Ihre disk.img ISO in einem Terminal:

    sudo mkdir /media/oldinstall
    sudo mount -o loop /media/dave/disk.img /media/oldinstall
    

    -Note - Nach dem Erstellen der gewünschten IMG-Datei, manchmal, wenn Sie versuchen, es als ein Loop-Gerät mounten, erhalten Sie möglicherweise die folgenden Fehler

    "NTFS-Signatur fehlt.  Fehler beim Mounten von '/ dev / loop0': Ungültiges Argument  Das Gerät '/ dev / loop0' scheint kein gültiges NTFS zu haben. "

    Eine IMG-Datei enthält manchmal einen Master-Boot-Record und eine Partitionstabelle vor der eigentlichen Partition, die Sie mounten möchten. Daher müssen Sie den Offset der erforderlichen Partition herausfinden. Zu diesem Zweck kann das Tool parted verwendet werden. Schauen Sie sich zum Beispiel die Antwort von sisco311 in diesem Link Pfandrecht

    an

    Wenn Sie also Ihren Offset auf "xxx" festgelegt haben, können Sie Ihre Partition mit

    mounten
    sudo mount -o loop,offset=xxx /media/dave/disk.img /media/oldinstall
    
  • Von dort können Sie entweder Dateien auswählen oder alles über Ihre neue Ubuntu-Installation kopieren, indem Sie etwas wie:

    verwenden
    sudo rsync /media/oldinstall/ /media/my-new-install/
    
  • Starten Sie neu und Sie sollten mit Ihrer alten VMWare-Installation begrüßt werden, jedoch auf Bare-Metal-Basis. Wenn du fiese Grub-Probleme bekommst, kannst du das Problem beheben, indem du zurück zur Live-CD gehst, Chroot macht und Dinge festlegst .

Oli 29.03.2011, 12:44
quelle
8

Vielleicht ist es nicht genau das, wonach Sie fragen, aber es kann erreichen, was Sie tun möchten.

Da alle Ihre Einstellungen in Ihrem Home-Verzeichnis gespeichert sind, können Sie einfach eine Sicherungskopie davon auf einer anderen Partition auf einer echten Festplatte erstellen. Nachdem Sie ein neues Ubuntu auf einer echten Festplatte installiert haben, führen Sie das Sicherungsprogramm noch einmal aus, um Ihr Home-Verzeichnis mit allen intakten Einstellungen wiederherzustellen.

Sie können ein wirklich ordentliches Backup-Programm namens Déjà Dup verwenden.

Info vom Ubuntu Software Center:

Déjà Dup ist ein einfaches Backup-Tool. Es verbirgt die Komplexität der Sicherung des Richtigen Wegs (verschlüsselt, extern und regelmäßig) und verwendet Duplizität als Backend.

Features:

  • Unterstützung für lokale, Remote- oder Cloud-Sicherungsspeicherorte, z. B. Amazon S3 oder Rackspace Cloud Files

  • Verschlüsselt und komprimiert sicher Ihre Daten

  • Erhöht inkrementell und lässt Sie Wiederherstellung von einem bestimmten Backup

  • Plant regelmäßige Backups

  • Integriert sich gut in Ihr GNOME Desktop

Sie werden in weniger als zwei Stunden fertig sein!

viel Glück!

    
danizmax 29.03.2011 12:32
quelle
4

Probieren Sie UDPCast

aus

Die Idee ist, das gesamte vmdk von seiner virtuellen Maschine auf die physische Maschine zu streamen, wo es auf die physische Festplatte geschrieben wird.

Das Verfahren ist unten beschrieben.

Da Sie eine vmdk-Datei haben, steht Ihnen möglicherweise eine VMWare Workstation zur Verfügung, sogar eine vollständige virtuelle Maschine, an die diese vmdk angehängt ist. Führen Sie Ihre virtuelle Maschine mit diesem speziellen vmdk aus, aber fügen Sie anstelle des normalen Bootvorgangs PartedMagic liveCD zum Booten hinzu.

Wenn LiveCD gestartet ist, navigieren Sie zum Hauptmenü und suchen Sie nach UDPCast Disk Cloning . Die Dialoge sind selbsterklärend (siehe Screenshot)

Nachdem Sie diese virtuelle Maschine als sender ausgewählt haben, sollten Sie auswählen, welches Laufwerk Sie senden möchten (in Unix-Notation, wie / dev / sda).

Nachdem Sie sender gestartet haben, müssen Sie auch receiver starten. Da du eine physikalische Festplatte hast, gehe ich davon aus, dass du auch einen kompletten PC mit dieser Festplatte hast. Das gleiche gilt hier: Sie müssen LiveCD mit UDPCast Disk Cloning starten und diesmal receiver sowie die entsprechende physikalische Festplatte auswählen.

Beachten Sie, dass Sie alle notwendigen Vorkehrungen treffen sollten, um eine Netzwerkverbindung zwischen Ihrer virtuellen Maschine und der physischen Hardware herzustellen. Sie sollten die notwendigen Vorkehrungen treffen, wenn Ihr vmdk private Daten enthält, da sein Inhalt effektiv über Ihr Netzwerk streamen würde. Eine andere Sache ist, dass Ihre Ziel-Festplatte nicht weniger Speicherkapazität haben sollte, als die Kapazität Ihres vmdk. Es ist offensichtlich, aber es ist auch erwähnenswert, dass Ihr Image eins zu eins auf Ihrer Ziel-Festplatte angelegt wird und Sie geeignete Operationen mit gparted oder ähnlichem ausführen müssen, um die größere Kapazität Ihrer neuen Festplatte zu nutzen.

    
PF4Public 13.02.2016 00:24
quelle
3

Wenn Sie VirtualBox installiert haben, können Sie die VDI-Datei (VirtualBox-Image) in das IMG-Format konvertieren VBoxManage -Befehl, kopieren Sie dann auf die physische Festplatte, zB

VBoxManage clonehd --format RAW file.vdi file.img

Dann können Sie den Befehl dd verwenden, um die Datei in die physische Partition zu kopieren:

dd if=./file.img of=/dev/<partition_here>

Hinweis: Verwenden Sie bei Bedarf sudo. Seien Sie vorsichtig, wenn Sie das richtige Gerät in / dev.

angeben     
kenorb 03.06.2017 17:22
quelle
0

Wenn der neue physische Datenträger an den Computer angeschlossen ist, auf dem der virtuelle VM-Datenträger aktiviert ist, können Sie VDI ohne eine zwischenzeitliche Konvertierung in physisch konvertieren, was wahrscheinlich eine Menge Zeit spart. Festplattenplatz. Dies setzt voraus, dass Ihr physischer Datenträger gleich oder größer als die maximale Größe des virtuellen Laufwerks ist. In meinem Fall war das Ziel, eine VDI in eine ZFS zvol umzuwandeln, aber der Ansatz sollte der gleiche mit jedem Blockgerät sein.

Erstellen Sie zuerst eine VMDK-Datei, die auf Ihr Blockgerät verweist:

VBoxManage internalcommands createrawvmdk -filename physical.vmdk -rawdisk /dev/sdX

Dann (mit dem Herunterfahren der VM!) können Sie die VDI auf die VMDK klonen:

VBoxManage clonemedium --existing virtual.vdi physical.vmdk

Das wird eine Weile dauern ... Wenn Sie fertig sind, können Sie die VMDK-Datei löschen, da sie nur als Zeiger für VirtualBox verwendet wurde, um das physische Gerät zu finden.

In meinem Fall hatte das neue zvol genau die gleiche Größe wie das virtuelle Laufwerk. Angesichts der Tatsache, dass Ihre physische Festplatte wahrscheinlich anders ist, müssen Sie einen Mechanismus zur Größenänderung der Partitionen verwenden, um die gesamte Festplatte auszufüllen. Gparted oder etwas vielleicht. Sie sollten in der Lage sein, auf das physische / dev / sdX-Gerät zu zeigen, während es noch an den VM-Computer angeschlossen ist, so dass Sie nicht auf den physischen Host der Boot-CD zurückgreifen müssen.

Sobald die Größenänderung abgeschlossen ist, öffnen Sie das Laufwerk in Ihrer physischen Maschine, drücken Sie die Daumen und schalten Sie es ein.

Wenn Sie das physische Laufwerk weiterhin mit VirtualBox verwenden möchten, lassen Sie das VMDK herum und verwenden Sie VBoxManage storageattach , um es mit der VM zu verbinden.

    
pendor 15.05.2018 15:23
quelle

Tags und Links