qemu:通过 ISO 安装 ubuntu 卡住,显示 "SVM" CPU 位警告

qemu: installating ubuntu through ISO gets stuck, shows "SVM" CPU bit warning

我正在尝试使用以下命令在我创建的其中一个 qcow2 映像中安装 ubuntu

sudo qemu-system-x86_64 -enable-kvm -nographic -smp 8 -m 8G -cpu qemu64 -cdrom ubuntu-19.10-live-server-amd64.iso -boot d ubuntu-19.10-live-server-amd64.qcow2

首先它发出警告,然后挂起

qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.svm [bit 2]
qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.svm [bit 2]
qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.svm [bit 2]
qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.svm [bit 2]
qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.svm [bit 2]
qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.svm [bit 2]
qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.svm [bit 2]
qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.svm [bit 2]
SeaBIOS (version 1.13.0-1ubuntu1)


iPXE (http://ipxe.org) 00:03.0 CA00 PCI2.10 PnP PMM+BFF8C9F0+BFECC9F0 CA00



Booting from DVD/CD...

ISOLINUX 6.04 20190226 ETCD Copyright (C) 1994-2015 H. Peter Anvin et al
Loading bootlogo...

Initializing gfx code...

我进行了很多搜索,得到了一些解决方案和可能出现的问题,但 none 有效。

1) 也尝试过 Ubuntu 20,但同样的错误。

2) VT-x 未启用。

已启用,lscpu显示

Virtualization:                  VT-x
Hypervisor vendor:               KVM
Flags: .. vmx ..

3) 尝试 -cpu qemu64。没用

4) 使用 qemu-system-i386 而不是 qemu-system-x86_64。但这失败了,出现了不同的错误

This kernel requires an x86-64 CPU, but only detected an i686 CPU.
Unable to boot - please use a kernel appropriate for your CPU.

5) 我确实发现 "SVM" CPU 位对应于 "AMD Secure Virtual Machine",这让我很困惑,因为我的 CPU 是 Haswell。

求助!

我找到问题所在了。

使用嵌套虚拟化时,选项 -cpu host 有效。这建议 qemu 使用与主机相同的 cpu 格式,在我们的例子中它也是一个虚拟机,并且大多数情况下也会使用主机 CPU 格式..

以上设置有效,

除非;您正在 virtualbox 上使用嵌套虚拟化,并尝试在 VM 上 运行 qemu。然后,为了完成这项工作,我们必须完全跳过 enable-kvm-cpu 选项。它确实使 qemu VM 运行 变慢,但它有效。