macos - 如何在qemu中明确解决 "Specify the ' raw'格式以消除限制。”

标签 macos qemu

我正在尝试在MACBOOK Pro上运行helloos.img,即使程序运行正常,它也显示

Specify the 'raw' format explicitly to remove the restrictions.

怎么处理呢?这重要吗? enter image description here

最佳答案

发出此警告的原因是QEMU会自动将磁盘镜像的格式猜测为原始格式。这样做的问题是,如果您的 guest 能够写入整个原始镜像,则可能会恶意地将QCOW2磁盘头写入(例如)原始镜像的开头,这意味着在重新启动VM时QEMU会错误地猜出图像类型,可能会导致不良结果。为防止这种情况,QEMU拒绝允许 guest 写入所探查的原始格式图像的开头。通常,这不会有什么坏处,但是如果您尝试例如在guest虚拟机内部对磁盘进行重新分区,它将失败。

要解决此问题,您需要明确告知QEMU该镜像为原始格式,但是您不能使用便捷的简短选项或“仅传递假定为硬盘的磁盘镜像文件名”方法来做到这一点。重新使用。您需要使用“长格式”选项来指定磁盘镜像,以便可以将其传递为format = raw。在这种情况下-drive file=helloos.img,format=raw,index=0,media=disk(这在QEMU的联机帮助页中有说明,其中“您可以使用-代替-hda,-hdb,-hdc,-hdd:”和等效的长格式作为短选项。)

另请参阅https://unix.stackexchange.com/questions/276480/booting-a-raw-disk-image-in-qemu,这是一个类似的查询。

PS:如果您给出正在运行的命令行以及问题文本中的完整错误消息,而不仅仅是在窗口重叠的屏幕截图中,您的问题将更容易回答。

关于macos - 如何在qemu中明确解决 "Specify the ' raw'格式以消除限制。”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47235461/

相关文章:

macos - 获取文件的 md5/sha1 校验和

java - 无法运行程序 "..."error=2,没有这样的文件或目录 (java)

macos - 是否可以在 OSX 中检测 Power Nap/DarkWake 模式

android - 自动更改 Android 模拟器区域设置

linux - QEMU 在 Eclipse 中运行正常,但在调试时失败

c++ - 如何将 double 类型的鼠标移动 x 和 y 从主机传递到 Qemu 中的虚拟机

python - 如何在Python中检查外部显示器是打开还是关闭?

QEMU riscv32-softmmu,softmmu是什么意思?

linux-kernel - qemu 和 gdb 的问题

c - 如何从源代码创建 libhidapi.dylib?