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

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

Я попробовал несколько изменений, включая использование 32-разрядной версии Windows 7, который перестал работать очень быстро. 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, я не нашел значения характерными для Windows 7.

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

BSOD

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

Обновление:

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

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

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

Update2:

Таким образом, я ответил на свой собственный вопрос (главным образом) ниже. KVM VM должен использовать собственную эмуляцию ЦП KVM, а не qemu's для меня для устанавливания Windows 7. Я не уверен, существует ли что-то, что может быть сделано для получения его работающий над qemu-эмуляцией ЦП, или будет ли более новая версия поддерживать его. Но по крайней мере возможно получить его работающий на KVM VM.

8
задан 27.03.2017, 09:47

5 ответов

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

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

2
ответ дан 07.12.2019, 13:58

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

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

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

1
ответ дан 07.12.2019, 13:58

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

Похож на поддержку на 64 бита, был добавлен к KVM, таким образом, qemu-system-x86_64 с --accelerate мог бы/мог дают Вам обоим KVM и 64 бита, если Ваше ядро создается для него Вашим распределением.

0
ответ дан 07.12.2019, 13:58

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

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

3
ответ дан 07.12.2019, 13:58

Вот простой способ

Если у Вас нет некоторых конкретных, почему Вы установили бы гостевую ОС с помощью virt-установки, вот 'легкий' способ сделать это без virt-установки.

У меня есть работа VM с установленным Windows 7. Вот то, как я создал его.

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

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

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

Шаг 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 МБ памяти для виртуальной машины
  • - CD-ROM настраивает CD-ROM. Поскольку физический диск использует тот же диск в качестве Вашего HostOS. Для изображения обеспечьте путь к файлу изображения.
  • - загрузитесь d загружает виртуальную машину от CD-ROM

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

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

После прохождения через целого процесса установки, VM должен перезагрузить в рабочую ОС. Для загрузки VM снова просто запускают эту команду:

kvm -m 512 vdisk.img

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

Если Вы не понимаете, что различие между 'паравиртуализацией' и 'собственной виртуализацией' Matthias уже сделало большое объяснение различий.

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

7
ответ дан 07.12.2019, 13:58

Теги

Похожие вопросы