Windows 7 не удается установить на KVM с qemu

Я пытаюсь установить Windows 7 в качестве гостевой ОС в виртуальной машине, размещенной на моем 64-битном Ubuntu Karmic box. Я добираюсь до точки выбора моих языковых настроек и нажав кнопку "Установить сейчас", но через некоторое время я получаю синий экран смерти.

Я пробовал несколько вариантов, в том числе с использованием 32-разрядной версии Windows 7, которая терпит неудачу очень быстро. The virt-install команда, которую я пробовал, включает в себя следующее:

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

ограниченная информация, которую я мог найти, предположила, что "Vista" должен работать как --os-variant, я не нашел никаких значений, специфичных для Windows 7.

вот мой синий экран:

BSOD

Я нашел очень мало в Google, поэтому я предполагаю, что это не случай KVM, просто не поддерживающий Windows 7.

обновление:

я смог успешно создать виртуальную машину Windows 7 с помощью графического приложения "диспетчер виртуальных машин", хотя я действительно не понимаю причина проблемы с виртуальной машиной, созданной с помощью virt-install. Сравнение файлов конфигурации в /etc/libvirt / qemu дает некоторые подсказки, хотя я не знаю достаточно, чтобы правильно их интерпретировать. Интересные различия в двух конфигурациях виртуальных машин:

--- 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'/>

Я не уверен, означает ли это, что рабочая виртуальная машина вообще не использует qemu, или есть какая-то другая разница в том, как она используется с kvm.

Update2:

Итак, я ответил на свой вопрос (в основном) ниже. Виртуальная машина KVM должна использовать эмуляцию собственного процессора KVM, а не qemu, чтобы установить Windows 7. Я не уверен, есть ли что-то, что можно сделать, чтобы заставить его работать на процессоре эмуляции qemu, или будет ли его поддерживать более новая версия. Но, по крайней мере, его можно запустить на виртуальной машине KVM.

17
задан Gypsy Spellweaver
03.01.2023 9:05 Количество просмотров материала 2925
Распечатать страницу

6 ответов

вот простой способ

если у вас нет какой-то конкретной причины, почему вы устанавливаете GuestOS с помощью virt-install, вот "простой" способ сделать это без virt-install.

у меня есть рабочая виртуальная машина с установленной Windows 7. Вот как я его создал.

Шаг 1: создайте образ виртуального диска

qemu-img create -f qcow2 vdisk.img 100g

создает виртуальный диск в формате qcow2. Установка размера раздела 100g (гигабайт) будет не выделить 100Гб на жестком диске. Виртуальный раздел займет столько же места, сколько и содержащиеся в нем данные. 100g просто делает это так, что вам (надеюсь) никогда не понадобится увеличивать размер. увеличение размера изображения qcow2 по умолчанию по-прежнему является болью в A** to do.

Шаг 2: Установка операционной системы

если вы используете физический cd-rom для загрузки ОС, используйте следующую команду.

sudo kvm -m 750 -cdrom /dev/sr0 -boot d vdisk.img

если вы используете образ диска для загрузки ОС, используйте эту команду.

sudo kvm -m 750 -cd-rom /path/to/image/image.iso -boot d vdisk.img

вот разбивка команд:

  • kvm-вызывает виртуальную машину ядра (очевидно)
  • -m 750 - выделяет 750 МБ памяти для виртуальной машины
  • -набор компакт-дисков на компакт-диск. Для физического диска используйте тот же диск, что и ваш HostOS. Для образа укажите путь к файлу образа.
  • -boot D загружает виртуальную машину из cd-rom

Я установил объем памяти для начальной нагрузки 750, чтобы быть консервативным, так что я могу быть уверен, что установка заканчивается без исчерпания памяти. Для последующих нагрузок я обычно устанавливаю его на 512.

Примечание: AFIAK, команда kvm работает только в более поздних версиях Debian / Ubuntu или их производных. Если это не работает, эквивалентной (и более распространенной) командой является qemu-system-x86_64 или qemu-kvm для 32 бит.

после вы прошли через весь процесс установки, виртуальная машина должна перезагрузиться в рабочую ОС. Чтобы загрузить виртуальную машину снова, просто запустите следующую команду:

kvm -m 512 vdisk.img

С любыми параметрами командной строки, необходимыми для подключения дополнительных физических дисков, оборудования и т. д. Чтобы найти информацию о параметрах командной строки, проверьте kvm --help.

если вы не понимаете разницы между "паравиртуализацией" и "родной виртуализацией" Маттиас уже сделал большое объяснение отличия.

для более "глубокого" объяснения этого процесса прочитать эту статью.

7
отвечен Evan Plaice 2023-01-04 16:53

причиной этой проблемы при установке windows с виртуализацией qemu является разница между "паравиртуализацией" qemu и "собственной виртуализацией" KVMs. Паравиртуализация означает, что он имитирует процессор и нуждается в специальном ядре на стороне клиента (виртуальная система), так что эта система знает, как.вызовите функции процессора правильно. По этой причине не все системы могут работать с qemu без KVM.

с другой стороны, виртуальные системы использование KVM может напрямую обращаться к ЦП (поскольку KVM использует поддержку аппаратной виртуализации AMD / Intel). В этом случае специальное ядро не требуется. Недостатком является то, что "хозяин" должен иметь современный процессор, который поддерживает аппаратной виртуализации (так называемый СВМ на AMD и VT-x для процессоров Intel) и что клиент система должна быть в состоянии работать на том, что процессор (не проблема, так как большинство систем может работать на базе x86), снижение переносимости.

3
отвечен Matthias 2023-01-04 19:10

исключение 0x1e KMODE_EXCEPTION_NOT_HANDLED, что обычно является неисправностью, связанной с оборудованием или драйвером устройства. Мое предположение, что по какой-то причине Windows не нравится эмуляция аппаратных средств виртуальной машины.

вы пробовали использовать строки? У них есть релиз для Karmic Koala, и они поддерживают Windows 7 (я запускаю Win7 прямо сейчас на коробке Windows XP).

2
отвечен Jared Harley 2023-01-04 21:27

после некоторых исследований и консультаций с коллегой, проблема, кажется, с эмуляцией процессора qemu. Моя команда virt-install создала виртуальную машину KVM с помощью эмуляции процессора qemu. VMM создал виртуальную машину KVM, используя эмуляцию собственного процессора KVM (хотя все еще использует qemu для эмуляции других частей ПК, так как текущая версия KVM использует qemu для этого).

добавив параметр --accelerate в команду virt-install, я могу создать виртуальную машину и установить Windows 7 на нем.

таким образом, ответ, кажется, что Windows 7 не может быть установлена на виртуальной машине с помощью эмуляции процессора qemu-kvm-0.11.0, но это можно обойти с помощью эмуляции собственного процессора KVM. Это делается с помощью опции -- accelerate для virt-install. Параметр файла конфигурации будет <domain type="kvm">, а не <domain type="qemu">.

1
отвечен Kief 2023-01-04 23:44

другое отличие, которое я вижу сверху, что KVM должен быть только 32-битной эмуляцией... или, по крайней мере, с вашим XML diff, который выделяется.

похоже, что в KVM добавлена поддержка 64 бит, поэтому qemu-system-x86_64 с --accelerate might / может дать вам KVM и 64bit, при условии, что ваше ядро построено для него вашим дистрибутивом.

0
отвечен Mike Mestnik 2023-01-05 02:01

я смог начать установку, изменив отображение cirrus Как рекомендуется здесь: https://ubuntuforums.org/showthread.php?t=2325843&s=67c08420c394b532ea814a0c46752914&p=13500324#post13500324

  1. установить Win 7 с cirrus графикой, выключить vm
  2. добавить второй графический адаптер как qxl
  3. загрузите виртуальную машину и установите драйвер qxl
  4. выключите виртуальную машину и удалите адаптер cirrus
0
отвечен Jiab77 2023-01-05 04:18

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя

Похожие вопросы про тегам:

kvm-switch
qemu
ubuntu
virtual-machine
windows-7
Вверх