我有两个 arch 安装:一个在 /dev/nvme0n1p2 上(包含根目录和主目录),其 EFI 在 /dev/nvme0n1p1 上(同一物理磁盘上的不同分区)。
另一个 arch 安装在另一个物理驱动器 /dev/sda2 上(它包含根目录和主目录),而 EFI 安装在 /dev/sda1 上(同一 /dev/sda 设备上的另一个分区)。
两者都以 KDE plasma 作为默认桌面管理器。
我可以毫无问题地对其中任何一个进行硬件启动。
现在我想在使用 KVM/QEMU 登录 /dev/nvme0n1p2 的同时启动 /dev/sda2 archlinux 作为 VM。
我已完成以下操作:
- 从 BIOS 启用虚拟化:lscpu | grep Virtualization 显示 VT-x
- 安装了以下软件包 qemu virt-manager ovmf bridge-utils vde2
- 启动模块skvm、kvm_intel、virtio、virtio_net、virtio_blk、virtio_pci(使用modprobe)
- 在客户机(/dev/sda2)上:更新了软件包和 initramd(mkinitcpio -P)
- 确保 /dev/sda1 和 /dev/sda2 未挂载 (lsblk、fuser、mountpoint)
- 确保 /usr/share/ovmf/x64/OVMF_CODE.fd 和 /usr/share/edk2/x64/OVMF_VARS.fd 存在
现在,当我尝试运行以下命令时:
sudo qemu-system-x86_64 \
-enable-kvm \
-m 4G \
-cpu host \
-smp cores=4 \
-drive file=/dev/sda2,format=raw,index=0,media=disk \
-drive file=/dev/sda1,format=raw,index=1,media=disk \
-drive if=pflash,format=raw,readonly=on,file=/usr/share/ovmf/x64/OVMF_CODE.fd \
-drive if=pflash,format=raw,file=/usr/share/ovmf/x64/OVMF_VARS.fd \
-net nic \
-net user \
-vga virtio
我收到以下错误:
BdsDxe: failed to load Boot0001 "UEFI QEMU HARDDISK 0100001 " फळ PciRoot (0x0) /Pci (0x1,0x1) /Ata (Pri
mary,Master,0x0) : Not Found
BdsDxe: failed to load Boot0002 "UEFI QEMU HARDDISK 0100002 " from PciRoot (0000) /Pci (0x1,0x1) /Ata (Pri
nary,Slave,0x0) : Not Found
>>Start PXE over 1705. .
你能帮忙解决这个问题吗?