J'essaie d'installer Windows 7 en tant que système d'exploitation invité dans une machine virtuelle hébergée par ma boîte Ubuntu Karmic 64 bits. J'arrive au point de sélectionner mes paramètres de langue et de cliquer sur «Installer maintenant», mais peu de temps après, j'obtiens un écran bleu de la mort.
J'ai essayé quelques variantes, notamment en utilisant la version 32 bits de Windows 7, qui échoue très rapidement. La virt-install
commande que j'ai essayée inclut ceci:
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
Les informations limitées que j'ai pu trouver suggéraient que «Vista» devrait fonctionner comme la variante --os, je n'ai trouvé aucune valeur spécifique à Windows 7.
Voici mon écran bleu:
J'ai trouvé très peu de choses sur Google, donc je suppose que ce n'est pas un cas de KVM qui ne prend tout simplement pas en charge Windows 7.
Mise à jour:
J'ai réussi à créer une machine virtuelle Windows 7 en utilisant l'application graphique "Virtual Machine Manager", bien que je ne comprenne pas vraiment la cause du problème avec la machine virtuelle créée avec virt-install
. La comparaison des fichiers de configuration sous / etc / libvirt / qemu fournit quelques indices, bien que je n'en sache pas assez pour les interpréter correctement. Les différences intéressantes dans les deux configurations de VM sont:
--- 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'/>
Je ne sais pas si cela signifie que la machine virtuelle fonctionnelle n'utilise pas du tout qemu, ou s'il y a une autre différence dans la façon dont elle est utilisée avec kvm.
Update2:
J'ai donc répondu à ma propre question (principalement) ci-dessous. Une machine virtuelle KVM doit utiliser la propre émulation de processeur de KVM plutôt que celle de qemu pour que je puisse installer Windows 7. Je ne sais pas s'il est possible de faire quelque chose pour le faire fonctionner sur un processeur d'émulation qemu, ou si une version plus récente le supportera. Mais au moins, il est possible de le faire fonctionner sur une machine virtuelle KVM.
L'exception 0x1e est
KMODE_EXCEPTION_NOT_HANDLED
, qui est généralement une erreur liée au matériel ou au pilote de périphérique. Je suppose que, pour une raison quelconque, Windows n'aime pas le matériel émulé de la machine virtuelle.Avez-vous essayé d'utiliser VirtualBox ? Ils ont une version pour Karmic Koala et ils prennent en charge Windows 7 (j'utilise Win7 en ce moment sur une boîte Windows XP).
la source
Après quelques recherches et consultations avec un collègue, le problème semble être lié à l'émulation du processeur qemu. Ma commande virt-install a créé la machine virtuelle KVM en utilisant l'émulation CPU de qemu. VMM a créé une machine virtuelle KVM en utilisant la propre émulation CPU de KVM (bien qu'utilisant toujours qemu pour émuler d'autres parties du PC, car la version actuelle de KVM utilise qemu pour cela).
En ajoutant le paramètre --accelerate à ma commande virt-install, je peux créer une machine virtuelle et y installer Windows 7.
Ainsi, la réponse semble être que Windows 7 ne peut pas être installé sur une machine virtuelle à l'aide de l'émulation de processeur qemu-kvm-0.11.0, mais cela peut être résolu en utilisant la propre émulation de processeur de KVM. Cela se fait en utilisant l'option --accelerate pour virt-install. Le paramètre du fichier de configuration sera
<domain type="kvm">
plutôt que<domain type="qemu">
.la source
L'autre différence que je vois ci-dessus est que KVM ne devrait être qu'une émulation 32 bits ... ou du moins avec votre différence XML qui se démarque.
Il semble que le support 64 bits ait été ajouté à KVM, donc qemu-system-x86_64 avec
--accelerate
pourrait / pourrait vous donner à la fois KVM et 64 bits, à condition que votre noyau soit construit pour cela par votre distribution.la source
J'ai pu démarrer l'installation en modifiant d'abord l'affichage
cirrus
comme recommandé ici: https://ubuntuforums.org/showthread.php?t=2325843&s=67c08420c394b532ea814a0c46752914&p=13500324#post13500324la source