staging.inyokaproject.org

Windows 7 bootfähig virtualisieren

Archivierte Anleitung

Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.


Anmerkung: Der Support von Windows 7 endete am 14.1.2020, es gibt für Windows 7 keine Sicherheitsupdates mehr, siehe auch Blogeintrag von Microsoft 🇩🇪.

Achtung!

Die Verwendung dieses Howto geschieht auf eigene Gefahr. Bei Problemen mit der Anleitung melde dies bitte in der dazugehörigen Diskussion und wende dich zusätzlich an den Verfasser des Howtos.

Problembeschreibung

Die folgenden Schritte beschreiben die Virtualisierung einer existierenden Windows-7-Installation. Es wird eine direkt bootfähige VM für QEMU erzeugt.

Auf diese Art und Weise ist es u. a. möglich ein komplettes System zu archivieren und jederzeit wieder zu aktivieren. Dies erspart eine Migration und Sicherung alter Datenbestände.

Anleitung

Die Anleitung geht von einem dual boot System mit GRUB2 aus. Auf der Festplatte des Systems koexistieren mehrere ?buntu-Derivate und LinuxMint, sowie eine alte Windows 7 Installation. Diese soll vollständig virtualisiert werden.

Voraussetzung

  • Windows 7 DVD (ein ISO-Image kann direkt bei Microsoft heruntergeladen werden, falls keinen DVD mehr zur Hand)

  • Windows-Lizenzschlüssel (wird später irgendwann zum erneuten Registrieren benötigt)

  • SuperGRUB2 auf CD/DVD oder USB-Stick (Download von supergrubdisk.org 🇬🇧 ⮷). In der Anleitung wird mit einem DVD-Laufwerk gearbeitet.

  • Kenntnisse von KVM/QEMU, QEMU-Monitor sowie Windows- und Linux-Befehlseingabe in "Eingabeaufforderung" und Terminal.

Vorgehen

  1. System starten und altes Windows-7-System aus dem GRUB2-Menü heraus booten.

  2. In Windows das offizielle Tool DISK2VHD von der Microsoft-Website herunterladen (hier 🇬🇧) und installieren. Vor dem nächsten Schritt empfiehlt es sich, das Windowssystem aufzuräumen und evtl. zu defragmentieren. Es ist ebenfalls eine gute Idee sicherzustellen, dass 7Zip o. ä. im Windows installiert ist bevor konvertiert wird (siehe vorletzten Punkt).

  3. Das existierende System mit dem Befehl disk2vhd konvertieren (in einer "Eingabeaufforderung"). Es wird eine Datei mit der Endung .VHDX erzeugt (w7.vhdx in meinem Fall).

    • Achtung: Dieses Image ist in etwa so groß wie die existierende Installation.

    • Anmerkung: Dieses Image kann schon mittels QEMU und der SuperGrub2-CD/DVD gestartet werden!

  4. w7.vhdx mit qemu-image in das qcow2-Format konvertieren (oder ein anderes gewünschtes Format).

  5. Mit der SuperGRUB2-CD (DVD) im Laufwerk wird w7.qcow2 nun mit QEMU in einem Terminal gestartet:

    • qemu-system-x86_64 -enable-kvm -m 4G -drive file=w7.qcow2 -vga virtio -cdrom /dev/sr0 -boot menu=on

    • (Dies setzt voraus, dass QEMU aus dem Verzeichnis mit w7.qcow2 gestartet wird; andernfalls den kompletten Pfad angeben z. B. /home/W7/w7.qcow2. Das CD/DVD-Laufwerk hat möglicherweise auch einen anderen Namen; dann hilft lsbkl den Namen herauszufinden.)

    • Sobald das System bootet, die Esc -Taste drücken um in das Boot-Menü zu gelangen. Sollte das System nach grub rescue booten, bitte re-boot mit Strg + Alt + Entf und dann Esc rechtzeitig drücken.

  6. Auswahl boot from DVD - das SuperGRUB-Menü wird geladen und nach der Auswahl des Menüpunkts discovery werden bootfähige Windows-System angezeigt (möglicherweise doppelter Eintrag, wie es hier der Fall war). Ein Windows-System auswählen und booten. Alles sollte nun wie gehabt funktionieren. Das erste Booten ist relativ langsam, weil Windows mehrere Treiber nachinstalliert. Bitte sicherstellen, dass dieser Vorgang komplett abgeschlossen ist, bevor das System heruntergefahren wird!

  7. Die Auflösung im QEMU-Windows-Fenster ist wahrscheinlich grottenschlecht und muss im Windows nachjustiert werden. Als Nächstes den Befehl (Eingabeaufforderung) bootrec.exe /? ausführen. Windows wird sich a. V. n. damit melden, dass es keinen Befehl bootrec zur Verfügung hat. Sollte das nicht der Fall sein, bitte den folgenden Schritt überspringen.

  8. Jetzt wird eine original Windows-7-DVD benötigt (bootrec.exe wird nicht auf der Microsoft-Webseite zur Verfügung gestellt, ist aber in jedem Windows-7-ISO enthalten): Im QEMU-Monitor SuperGRUB-CD/DVD auswerfen und change zur Windows-DVD. Auf der DVD \sources\boot.wim mit 7Zip öffnen (oder einem anderen Tool, das WIM-Dateien lesen kann). bootrec.exe befindet sich im Verzeichnis \1\Windows\System32 - bootrec.exe extrahieren und speichern auf C:.

  9. Nun nacheinander die Befehle bootrec /fixmbr und bootrec /fixboot ausführen. Bitte weiterhin darauf achten, dass weitere Windows-Treiber-Installationen erfolgreich beendet werden bevor das System mit shutdown /s /t 0 heruntergefahren wird.

Das war's.

Sinnvoll ist es auf jeden Fall ein QEMU Overlay Image anzulegen und zu nutzen, um das konvertierte System in seinem Zustand zu konservieren.

Diese Revision wurde am 2. Februar 2020 16:13 von noisefloor erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Howto