虚拟机在重启时冻结并崩溃

虚拟机在重启时冻结并崩溃

使用 QEMU 7.0 (qemu-system-aarch64) 安装 Ubuntu 22.04 LTS、Windows 11 和 Rocky Linux 后,VM 无法重新启动并冻结。我自己用 CTRL+C 关闭了 QEMU。结果,它要么看不到 HDD,要么 OVMF 根本不起作用。

注意:启用 ITS 后,Windows 会在启动时崩溃,但 Linux 发行版可以正常工作。此外,ITS 运行时会出现以下警告:

warning: ITS KVM: full reset is not supported by the host kernel

我的参数:

qemu-system-aarch64 -m 2G -cpu host -accel kvm -device usb-ehci -device intel-hda  -M virt-6.1,its=off -smp 8 -device ramfb -device usb-kbd  -device usb-mouse -device usb-tablet -drive file=/sdcard/rocky.iso,media=cdrom,if=none,id=drivers -device usb-storage,drive=drivers -device ahci,id=ahci  -accel 3d -drive id=disk,file=/sdcard/w11.raw,if=none -device ide-hd,drive=disk,bus=ahci.0 -chardev socket,id=chrtpm,path=/data/local/tmp/ubuntu/emulated_tpm -tpmdev emulator,id=tpm0,chardev=chrtpm -pflash /sdcard/flash0.img -pflash /sdcard/flash1.img

答案1

启用 ITS 后,Windows 在启动时崩溃,

由于 Windows 11 的要求很高,因此在 QEMU 中安装 Windows 11 需要做大量工作。

(如果您需要 Windows 11 VM,请考虑使用 VMware Professional V16。VMware 为 Windows 11 提供更简单的设置)。

请参见:

在 QEMU 中安装 Windows 11

您需要安装 QEMU 4.0 或更高版本才能获得 TPM 2.0 模拟。Windows 11 的其他硬件最低要求包括 4GB RAM 和 64GB 硬盘。

您需要下载 Windows 11 ISO 并安装它,然后完成设置过程。

由于 QEMU 是基于命令的,因此该虚拟化软件的步骤与其他软件不同。

首先,您需要创建虚拟机映像,我们将使用 64GB 的磁盘大小,因为这是 Windows 11 的最低要求:

在 QEMU 中启用 TPM 和安全启动现在您需要为 SWTPM 模拟器创建一个临时目录并在 TPM2 模式下创建套接字以使用以下命令:

mkdir /tmp/emulated_tpm swtpm socket --tpmstate dir=/tmp/emulated_tpm --ctrl type=unixio,path=/tmp/emulated_tpm/swtpm-sock --log level=20 --tpm2

接下来,您需要使用 TPM 选项启动您的客户虚拟机:

qemu-system-x86_64 -hda ~/qemu-images/win11.img -boot d -m 4096 -enable-kvm \ -chardev socket,id=chrtpm,path=/tmp/emulated_tpm/swtpm-sock \ -tpmdev emulator,id=tpm0,chardev=chrtpm -device tpm-tis,tpmdev=tpm0

相关内容