Когда я пытаюсь загрузить виртуальную машину, используя:
qemu-system-x86_64 -m 1024 -cdrom /host/iso/ubuntu-13.10-desktop-amd64.iso -name mac -hda ~/ubuntu
Я вижу черный экран сразу после начала установки (перед тем, как выбрать язык). Я попытался установить nomodeset
в «Другие параметры», но это не решило проблему.
Однако, используя тот же ISO, я могу загрузить виртуальную машину с помощью Virtual Machine Manager. Мне нужно загрузить виртуальную машину qemu-system-x86_64
для одного из моих проектов.
Пожалуйста, дайте мне знать, как решить эту проблему.
13.10
virtualization
qemu
Сагар Патни
источник
источник
-vga [std|vmware|cirrus|qxl]
. Обратитесьman qemu-kvm
к более подробной информации.Ответы:
По умолчанию
qemu-system-x86_64
делает эмуляцию , а не виртуализации. Эмуляция медленная и интенсивно загружает процессор - вы можете увидеть это при запускеtop
, который покажет ваш процессор на уровне почти 100%. Я только что загрузил Xubuntu 14.04, используяqemu-system-x86_64
в своей системе, и потребовалось 10 минут для загрузки на рабочий стол. Ubuntu обычно скрывает загрузочную информацию, поэтому вы видите черный экран (или некоторые другие графические артефакты, вызванные изменением разрешения BIOS). Если вы удалитеsplash quiet
и добавитеdebug
параметры ядра, вы увидите, что он делает в течение этого времени.Что вы, вероятно, хотите сделать, так это запустить
qemu-system-x86_64 -enable-kvm
поддержку аппаратной виртуализации.От
man qemu-system-x86_64
:(Вы можете увидеть людей, которые рекомендуют программу
kvm
из пакетаqemu-kvm
.kvm
Это просто скрипт-обертка, который делает этоexec qemu-system-x86_64 -enable-kvm "$@"
)KVM использует аппаратную виртуализацию, а не симуляцию, и, следовательно, намного быстрее. Для этого требуется процессор с поддержкой аппаратных расширений виртуализации (VT-x для Intel или AMD-V для AMD), которые есть в большинстве современных систем ПК.
При виртуализации ЦП фактически выполняет необработанный исполняемый двоичный код из гостевой ОС. Виртуализация быстрая, но есть ограничение, что хост-ОС и гостевая ОС должны быть двоично-совместимыми. При эмуляции бинарный код гостевой ОС переписывается для запуска на хост-процессоре. Это медленно, но имеет преимущество в том, что вы можете запускать гостевую ОС, скомпилированную для другой архитектуры ЦП (например, образ QEMU для Debian armel объясняет, как запускать Debian ARM на ПК).
Другой популярный вариант для виртуализации - VirtualBox .
источник
qemu-system-x86_64
. Говоря, чтоqemu-system-x86_64
это только эмуляция, вы хотите сказать, что kvm - это оболочка виртуализации поверх эмуляции, предоставляемойqemu-system-x86_64
?