![“sudo qemu -hda /dev/sda”(将主机的 sda 安装为客户端的 hda)有多疯狂?](https://linux22.com/image/1271858/%E2%80%9Csudo%20qemu%20-hda%20%2Fdev%2Fsda%E2%80%9D%EF%BC%88%E5%B0%86%E4%B8%BB%E6%9C%BA%E7%9A%84%20sda%20%E5%AE%89%E8%A3%85%E4%B8%BA%E5%AE%A2%E6%88%B7%E7%AB%AF%E7%9A%84%20hda%EF%BC%89%E6%9C%89%E5%A4%9A%E7%96%AF%E7%8B%82%EF%BC%9F.png)
我在 Linux 上使用 qemu 时发现我可以运行
sudo qemu -hda /dev/sda
而且它会再次启动我的系统!不过,在 Grub 成功加载后,我立即关闭了 qemu,因为该命令是使用运行的sudo
,我担心它会损坏我的/dev/sda
。
谁能解释一下这有多危险?
答案1
我想说这是极其危险的。
您的假设是正确的,它可能会损坏您的 /dev/sda。
两个系统访问同一个块设备,每个系统都有自己的缓存和缓冲区,这肯定意味着每个系统对文件系统上的内容有不同的看法 - 一个操作系统所做的更改将无法正确传播到另一个操作系统,并且您将开始让文件互相覆盖。
总而言之,这是一团糟。
现在,如果您在两个不同的分区上安装了两个操作系统(双启动),您可以使用 qemu 在其中一个操作系统内启动另一个操作系统,但您绝不能启动同一个操作系统两次(除非它是一个只读操作系统,例如实时 CD 映像)
答案2
您可以使用-snapshot
开关安全地运行该命令。
qemu 用法:
-快照 写入临时文件而不是磁盘映像文件