Qemu 表现得非常奇怪,好像它是 32 位的
Qemu behaving very weirdly as if it were 32 bits
所以我正在使用 arch wiki 从头开始制作这个多启动 pendrive,我想在 qemu 中测试它。我安装的 grub 是 efi 64 位所以我自然 运行
qemu-system-x86_64 -m 512 -enable-kvm -usb -device usb-host,hostbus=1,hostaddr=7
但引导加载程序显示错误:/grub/i386-pc/normal.mod not found
当然是这样。因为 i386-pc 是用于 32 位安装的!!!这些文件在 /boot/grub/x86_64-efi 文件夹中!!!我尝试了所有可能的谷歌搜索,但我的情况没有任何结果。我下载了符号链接以查看 qemu-system-x86_64
是否实际上是另一个伪装的二进制文件,但事实并非如此。有人可以帮忙吗?
用于 UBUNTU:
$ sudo qemu-system-x86_64 -m MEMORY_IN_BYTES -enable-kvm -cpu host -hda /dev/sdX
-drive if=pflash,format=raw,readonly,file=/usr/share/OVMF/OVMF_CODE.fd
-drive if=pflash,format=raw,file=/.../my_uefi_vars.fd
查看其他操作系统以及如何将文件复制到 my_uefi_vars.fd:
https://wiki.archlinux.org/title/Unified_Extensible_Firmware_Interface#OVMF_for_virtual_machines
如果出现类似“UEFI QEMU DVD-ROM QM00003 Not Found”的问题,请修复启动顺序:
https://pve.proxmox.com/wiki/OVMF/UEFI_Boot_Entries
来自 reddit 的 plushkatze 和 r3dk0w 的致谢。
编辑:补充说明。这与 efi 的固件有关,如果您从 qemu 运行 它必须从文件加载到上面命令的 -drive
s 中。例如,对于虚拟框,您还必须使用命令切换到 efi 固件,以更改 vdmk 文件以使用它启动。
所以我正在使用 arch wiki 从头开始制作这个多启动 pendrive,我想在 qemu 中测试它。我安装的 grub 是 efi 64 位所以我自然 运行
qemu-system-x86_64 -m 512 -enable-kvm -usb -device usb-host,hostbus=1,hostaddr=7
但引导加载程序显示错误:/grub/i386-pc/normal.mod not found
当然是这样。因为 i386-pc 是用于 32 位安装的!!!这些文件在 /boot/grub/x86_64-efi 文件夹中!!!我尝试了所有可能的谷歌搜索,但我的情况没有任何结果。我下载了符号链接以查看 qemu-system-x86_64
是否实际上是另一个伪装的二进制文件,但事实并非如此。有人可以帮忙吗?
用于 UBUNTU:
$ sudo qemu-system-x86_64 -m MEMORY_IN_BYTES -enable-kvm -cpu host -hda /dev/sdX
-drive if=pflash,format=raw,readonly,file=/usr/share/OVMF/OVMF_CODE.fd
-drive if=pflash,format=raw,file=/.../my_uefi_vars.fd
查看其他操作系统以及如何将文件复制到 my_uefi_vars.fd: https://wiki.archlinux.org/title/Unified_Extensible_Firmware_Interface#OVMF_for_virtual_machines
如果出现类似“UEFI QEMU DVD-ROM QM00003 Not Found”的问题,请修复启动顺序: https://pve.proxmox.com/wiki/OVMF/UEFI_Boot_Entries
来自 reddit 的 plushkatze 和 r3dk0w 的致谢。
编辑:补充说明。这与 efi 的固件有关,如果您从 qemu 运行 它必须从文件加载到上面命令的 -drive
s 中。例如,对于虚拟框,您还必须使用命令切换到 efi 固件,以更改 vdmk 文件以使用它启动。