KVM能否自动回滚对虚拟磁盘的更改?

我目前在我的Linux服务器上使用VirtualBox来运行一个小的Windows客户操作系统。 我已经configuration了它的主要虚拟硬盘驱动器,就像VBox所说的“不可变”一样 – 意味着对其进行的任何更改都会被写入差异映像中,并在系统重新引导时被丢弃。

KVM能做类似的事吗?

我已经通过“savevm”,“loadvm”了解了快照,但我相信这是保存的状态,而不是图像差异。

我最终想要的是具有两个驱动器的虚拟机:每个重新启动一个,一个保持其更改。 理想情况下,不可更改的驱动器映像应该只保存授予运行KVM的用户的读取权限。

KVM通过使用其支持工具具有这种function。 该工具的名称是qemu-img ,您可以随意创build快照,也可以在创build磁盘时指定它应该使用(不同的)支持磁盘,这些磁盘不会因您所做的任何更改而改变(更改将会持续在这里,让我们把它称为前面的磁盘,你也可以将它们合并)。

听起来好像您正在尝试创build类似设备的东西,比如机顶盒或路由器。 在这种情况下,你可能使这个过于复杂。 简单地让你的引导磁盘不可变(挂载它只读),并在第二个磁盘上有所有可变的数据。 这是一直做的。 事实上,我见过的一些机器从CD上启动,但仍然有硬盘来存储数据。 不需要COW磁盘。 或者可能不是。

这可以很容易地编写脚本,并且RHEV已经有了这个内置的function。脚本来启动虚拟机将是:1)拍摄快照2)启动附有快照的虚拟机
在关机时,删除快照,非常简单