VirtualBox VM 在 DualBoot 系统上共享

VirtualBox VM 在 DualBoot 系统上共享

我有一个双启动系统:出厂时安装的 Vista 和带 WUBI 的 Ubuntu Lucid。我在这两个系统上都安装了 Oracle VirtualBox,以便执行后续操作。我之前在 Vista 上使用 MS Virtual PC 和 XP VM,我用它来工作。然后我想在 Vista 和 Ubuntu 上共享同一个 VM,所以我在这两个系统上都安装了 OVB,而且由于 OVB 可以识别 VHD 格式,我甚至不必将其转换为 VDI。我只是在这两个系统上都配置了 VM瞧瞧

我已经这样做了几个星期,没有出现任何问题;它似乎非常稳定。我所做的是完全关闭虚拟机,以便在另一个启动的操作系统上冷启动。有人试过在一个操作系统上休眠,在另一个操作系统上恢复吗?我想只需将几个文件从一个操作系统复制到另一个操作系统即可……

答案1

我不完全确定你在问什么,但这里有两个可能的答案:

如果你想知道你是否可以让双启动操作系统中的一个处于休眠状态,然后启动另一个,对于大多数操作系统来说,答案是否定的。通常,引导加载程序会看到一个操作系统处于休眠状态,并为您选择该操作系统,而无需您选择。这是为了防止编辑可能已在内存中打开/加载的文件。

如果你想知道你是否可以休眠客户操作系统,然后重新启动进入其他主机操作系统,然后恢复客户操作系统, 是的你可以,如果您使用的 VM 软件支持休眠。更简单的方法是直接暂停虚拟机;大多数 VM 软件都有办法做到这一点。

答案2

这是可能的,但完全取决于您如何在两个主机操作系统之间共享虚拟机。

Oracle VirtualBox 将其所有数据存储在 .VirtualBox 目录中(通常位于您的主目录或 Windows 等效目录中),这包括使用 VirtualBox 本身创建的虚拟机的所有状态数据、快照等。如果两个主机系统使用相同的 .VirtualBox 目录(可能位于公共共享分区?),则两个主机系统之间的机器状态将无缝衔接。也就是说,您可以在任一操作系统中准确地从上次中断的位置继续操作。

如果不知道您具体情况的详细信息,尤其是主机之间如何共享数据以及它如何与 vhd 文件进行具体交互,我就无法透露更多。

希望这可以帮助!

答案3

也许这个词休眠困惑,我应该写保存状态相反。总的来说,我只是共享虚拟磁盘文件。

我做了一些研究,发现每个 VM 文件夹上都有一个 xml 文件,它保存配置信息,并且每次 VM 状态发生变化时都会更新。

有一个名为 lastStateChange 的 xml 属性,还有一个 stateFile 属性,该属性在为 VM 保存状态时写入,指向 Snapshots 文件夹中的 {uuid}.sav 文件。

当然,当您保存虚拟机状态时,.sav 文件也会保存。理论上,可以在双启动操作系统之间移动和重命名 .save 文件,并更改配置文件的属性(不同操作系统略有不同)。

重命名部分是因为 uuid 是虚拟机的 uuid,而不同操作系统的 uuid 是不同的。为了实用,可以编写一些脚本来执行此操作。

相关内容