Ich versuche, Windows 7 als Gastbetriebssystem in einer virtuellen Maschine zu installieren, die von meiner 64-Bit-Ubuntu Karmic-Box gehostet wird. Ich bin so weit, dass ich meine Spracheinstellungen auswähle und auf "Jetzt installieren" klicke, aber kurze Zeit später bekomme ich einen blauen Bildschirm mit dem Tod.
Ich habe ein paar Variationen ausprobiert, einschließlich der Verwendung der 32-Bit-Version von Windows 7, die sehr schnell ausfällt. Der virt-install
Befehl, den ich ausprobiert habe, umfasst Folgendes:
sudo virt-install --connect qemu:///system -n ksm-win7 -r 2048 \
--disk path=/home/kief/VM-Images/ksm-win7.qcow2,size=50 \
-c /var/Software/Windows7/Full/64bit/SW_DVD5_SA_Win_Ent_7_64BIT_English_Full_MLF_X15-70749.ISO \
--vnc --os-type windows --os-variant vista --hvm
Die begrenzten Informationen, die ich finden konnte, deuteten darauf hin, dass "Vista" als --os-Variante funktionieren sollte. Ich habe keine spezifischen Werte für Windows 7 gefunden.
Hier ist mein blauer Bildschirm:
Ich habe durch Googeln sehr wenig herausgefunden, daher schätze ich, dass dies kein Fall ist, in dem KVM Windows 7 einfach nicht unterstützt.
Aktualisieren:
Ich konnte mit der grafischen App "Virtual Machine Manager" erfolgreich eine Windows 7-VM erstellen, obwohl ich die Ursache des Problems mit der mit erstellten VM nicht wirklich verstehe virt-install
. Der Vergleich der Konfigurationsdateien unter / etc / libvirt / qemu liefert einige Hinweise, obwohl ich nicht genug weiß, um sie richtig zu interpretieren. Die interessanten Unterschiede in den beiden VM-Konfigurationen sind:
--- win7-virt-install.xml
+++ win7-vmm.xml
-<domain type='qemu'>
+<domain type='kvm'>
@@ -21 +21 @@
- <emulator>/usr/bin/qemu-system-x86_64</emulator>
+ <emulator>/usr/bin/kvm</emulator>
@@ -23 +23 @@
- <source file='/home/kief/VM-Images/ksm-win7.qcow2'/>
+ <source file='/var/lib/libvirt/images/ksm-win7x64.img'/>
Ich bin mir nicht sicher, ob dies bedeutet, dass die funktionierende VM überhaupt kein qemu verwendet oder ob es einen anderen Unterschied in der Art und Weise gibt, wie es mit kvm verwendet wird.
Update2:
Also habe ich meine eigene Frage (meistens) unten beantwortet. Eine KVM-VM muss die KVM-eigene CPU-Emulation anstelle von qemu verwenden, damit ich Windows 7 installieren kann. Ich bin nicht sicher, ob es etwas gibt, das getan werden kann, um es auf einer Qemu-Emulations-CPU zum Laufen zu bringen, oder ob eine neuere Version es unterstützen wird. Zumindest ist es aber möglich, es auf einer KVM-VM zum Laufen zu bringen.
Die 0x1e-Ausnahme ist
KMODE_EXCEPTION_NOT_HANDLED
, dass es sich normalerweise entweder um einen Hardware- oder einen Gerätetreiberfehler handelt. Ich vermute, dass Windows aus irgendeinem Grund die emulierte Hardware der virtuellen Maschine nicht mag.Haben Sie es mit VirtualBox versucht ? Sie haben eine Veröffentlichung für Karmic Koala und unterstützen Windows 7 (ich starte Win7 gerade auf einer Windows XP-Box).
quelle
Nach einigen Nachforschungen und Konsultationen mit einem Kollegen scheint das Problem bei der QEMU-CPU-Emulation zu liegen. Mein virt-install-Befehl hat die virtuelle KVM-Maschine mit der CPU-Emulation von qemu erstellt. VMM hat eine virtuelle KVM-Maschine mithilfe der KVM-eigenen CPU-Emulation erstellt (obwohl immer noch qemu zum Emulieren anderer Teile des PCs verwendet wird, da die aktuelle KVM-Version hierfür qemu verwendet).
Durch Hinzufügen des Parameters --accelerate zu meinem Befehl virt-install kann ich eine VM erstellen und Windows 7 darauf installieren.
Die Antwort scheint also zu sein, dass Windows 7 nicht mit der CPU-Emulation qemu-kvm-0.11.0 auf einer virtuellen Maschine installiert werden kann. Dies kann jedoch mit der KVM-eigenen CPU-Emulation umgangen werden. Dies geschieht mit der Option --accelerate für die virtuelle Installation. Der Konfigurationsdateiparameter ist
<domain type="kvm">
eher als<domain type="qemu">
.quelle
Der andere Unterschied, den ich von oben sehe, ist, dass KVM nur 32-Bit-Emulation sein sollte ... oder zumindest mit Ihrem XML-Diff, der auffällt.
Es sieht so aus, als ob KVM um 64-Bit-Unterstützung erweitert wurde. Qemu-system-x86_64
--accelerate
könnte Ihnen also sowohl KVM als auch 64-Bit bieten, vorausgesetzt, Ihr Kernel wurde von Ihrer Distribution dafür entwickelt.quelle
Ich konnte die Installation starten, indem ich zuerst die Anzeige
cirrus
wie hier empfohlen änderte : https://ubuntuforums.org/showthread.php?t=2325843&s=67c08420c394b532ea814a0c46752914&p=13500324#post13500324quelle