像 vmware Player 一样暂停 QEMU/KVM VM(将 RAM 和 CPU 状态保存到磁盘)?

Ned*_*d64 5 kvm virtual-machine qemu libvirt

是否可以像在 vmware Player 上一样将 QEMU/KVM/libvirt(在 x86-64 上)下的虚拟机状态保存到磁盘,这意味着:

  • RAM 和 CPU/系统状态保存到磁盘
  • 操作系统从外部停止(没有挂起到虚拟机内的磁盘)
  • 重启主机后虚拟机可以继续吗?

如果可能,它是否需要 VM 中的特殊驱动程序?哪一种适用于 Linux 和 Windows 7 来宾?

小智 7

要实现与 VMmware 在 中的“暂停”相同的功能virsh,请执行以下操作:

virsh managedsave <domain-name>
Run Code Online (Sandbox Code Playgroud)

机器可以稍后恢复

virsh start <domain-name>
Run Code Online (Sandbox Code Playgroud)

在我测试的主机(Ubuntu Server 14.04)上,保存文件存储在:

/var/lib/libvirt/qemu/save/<domain-name>.save
Run Code Online (Sandbox Code Playgroud)


sou*_*edi 6

virt-manager窗口具有“关闭”->“保存”功能。

不需要额外的驱动程序。我认为来宾内部的系统时间会发生明显的坏事。我不知道是否有客人司机可以让时钟赶上。

  • 所以它有。非常感谢,没发现。对于感兴趣的每个人,这需要在 `/home/$USER/.config/libvirt/qemu/save` 中的空间,如果需要,它可能是指向更大磁盘上的文件夹的链接。 (3认同)

0xS*_*dog 5

Red Hat Virtualization Deployment and Administration Guide有一个关于此的部分,但如果您没有访问权限,那么它不会有太大帮助...

简而言之,您正在寻找的是virsh dompmsuspend命令和选项。KVM 的 GUI 实用程序还可以,但遗漏了很多功能。virsh给定正确的选项和参数,该命令可以执行您需要的任何操作。我不熟悉“暂停” KVM 来宾,所以我不能给你太多指导,但文档应该有你需要的一切。