使用qemu引导VM时为什么会出现黑屏?


9

当我尝试使用以下方式引导虚拟机时:

qemu-system-x86_64 -m 1024 -cdrom /host/iso/ubuntu-13.10-desktop-amd64.iso -name mac -hda ~/ubuntu

在安装开始后立即出现黑屏(在选择语言之前)。我尝试nomodeset在“其他选项”中进行设置,但这不能解决问题。

但是,使用相同的ISO,我可以使用Virtual Machine Manager引导VM。我需要启动qemu-system-x86_64用于其中一个项目的VM 。

请让我知道如何解决此问题。


这不是问题的答案,但是如果您喜欢显示器的分辨率,请高举标志-vga [std|vmware|cirrus|qxl]man qemu-kvm有关更多详细信息,请参阅。
Nehal J Wani 2014年

在这里,我很详细的描述最好的QEMU KVM设置是我到目前为止已经达到了Ubuntu的:askubuntu.com/questions/884534/...
西罗桑蒂利冠状病毒审查六四事件法轮功

来到这里是因为将VM内存更改为2536MB之后,我在Win10 VM中出现黑屏。再次将其更改为2048MB为我解决了。(然后我有了3072MB的空间)。
Marc.2377

Answers:


9

默认情况下qemu-system-x86_64仿真,而不是虚拟化。仿真速度很慢且占用大量CPU-通过运行可以看到top,这将显示CPU接近100%。我只是qemu-system-x86_64在系统上使用Xubuntu 14.04进行引导,并且花费了10分钟才能引导到桌面。Ubuntu通常会隐藏引导信息,这就是为什么您看到黑屏(或由BIOS更改分辨率引起的其他一些图形工件)的原因。如果删除splash quiet并添加debug到内核​​参数,您将看到它在这段时间内正在做什么。

您可能想要做的是运行qemu-system-x86_64 -enable-kvm以支持硬件虚拟化。

qemu-system-x86_64 -enable-kvm -m 1024 -cdrom /host/iso/ubuntu-13.10-desktop-amd64.iso -name mac -hda ~/ubuntu

来自man qemu-system-x86_64

-enable-kvm
       Enable KVM full virtualization support. This option is only available
       if KVM support is enabled when compiling.

(您可能会看到人们kvm从软件包中推荐该程序qemu-kvmkvm这只是一个包装脚本而已exec qemu-system-x86_64 -enable-kvm "$@"

KVM使用硬件虚拟化而非仿真,因此速度更快。它需要支持大多数现代PC系统具有的硬件虚拟化扩展(Intel的VT-x或AMD的AMD-V)的CPU。

通过虚拟化,CPU实际上是在来宾OS中执行原始的可执行二进制代码。虚拟化速度很快,但是存在主机操作系统和来宾操作系统必须二进制兼容的限制。通过仿真,来宾操作系统的二进制代码将被重写以在主机CPU上运行。它很慢,但是具有可以运行为其他CPU架构编译的来宾OS的优点(例如,Debian armel的QEMU映像说明了如何在PC上运行Debian ARM)。

虚拟化的另一个流行选择是VirtualBox


kvm只是包装qemu-system-x86_64。说qemu-system-x86_64的只是仿真,您的意思是说kvm是对提供的仿真的虚拟化包装qemu-system-x86_64吗?
Jobin 2014年

@Jobin感谢您指出这一点,并相应调整了答案。
贝恩2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.