当我尝试使用 .qemu 添加超过 4 个磁盘映像时,Qemu 失败-drive file=...,index={0..3},media=disk,format=raw
。我为每个附加驱动器收到的错误类似于以下内容:
qemu-system: -drive ....: machine type does not support if=ide,bus=2,unit=X
如何让 qemu 接受额外的驱动器?
答案1
KVM目前只能虚拟化四个 IDE 驱动器对于特定的客人。-drive
如果未明确指定接口类型,则该选项默认为 IDE 驱动器。
如果您不是特别喜欢 IDE 虚拟化,您可以通过将 4 个以上的驱动器作为 virtio 驱动器附加到您的虚拟机(即通过添加if=virtio
到您的-drive
选项):
-drive file=...,if=virtio,index=X,...
请记住
- 您的来宾必须包含对 virtio 驱动器的支持(大多数现代 Linux 发行版都支持)
- 您的驱动器将显示为
vdx
而不是sdx
,因此如果来宾已经存在,请确保更新来宾的 grub/命令行/fstab - 如果您的发行版在 initramfs 中不包含必要的驱动程序(大多数都包含),并且您的根文件系统位于 virtio 驱动器上,则您必须添加它们(例如
/etc/initramfs-tools/modules
)并自行重建(即update-initramfs -u
)。或者您可以将根驱动器添加为普通 IDE 驱动器。
请参阅qemu-system(1)
获取更多信息。
关于弃用的说明:这弃用virtio-blk
设备上的 SCSI 直通不会影响 virtio 的其他方面。事实上,在撰写本文时,virtio 接口仍然是推荐方式将磁盘映像与 KVM 一起使用。