重命名使用 virsh snapshot-create-as 创建的 qcow2 内部快照

重命名使用 virsh snapshot-create-as 创建的 qcow2 内部快照

背景

我有一个QEMU/KVM虚拟机,其虚拟磁盘是qcow2文件。为了创建快照,我一直在使用

sudo virsh snapshot-create-as <vm_name> <snapshot_name>

现在我可以使用以下方式显示它们virsh snapshot-list --tree

$ sudo virsh snapshot-list --tree my_vm
snapshot_001
  |
  +- snapshot_002
      |
      +- snapshot_003

我想重命名这些快照(例如从snapshot_00Xmy_snapshot_00X),但没有virsh snapshot-rename命令。我能想到的两种可能的解决方法似乎都有严重的缺陷,我很高兴知道是否有更好的解决方法。

解决方法1

对于我想要重命名的每个快照,我可以这样做:

sudo snapshot-edit <vm_name> <snapshot_name> --rename

然后编辑<name>生成的 XML 中元素的内容。

然而,man virsh似乎强烈警告不要这样做(我的重点):

请注意,更改快照名称必须小心,因为某些快照的内容,例如单个 qcow2 文件中的内部快照,只能从原始名称访问。

因为在我的例子中,快照确实是单个 qcow2 文件中的内部快照,所以听起来好像使用virsh snapshot-edit可能会使它们无法访问。

解决方法2

我想,我可以用来qemu-img将内部快照转换为外部快照加一个支持文件,然后重命名它们,然后将它们重新组合成单​​个 qcow2 文件的内部快照。

但这并不简单,而且还需要手动编辑虚拟机来恢复我使用类似命令的能力virsh snapshot-revert(如果没有这些命令,快照实际上毫无用处)。如果没有更好的方法,我会感到非常惊讶。

问题

与上面给出的解决方法相比,是否有更好的方法来重命名使用 创建的一系列 QEMU/KVM 内部 qcow2 快照virsh snapshot-create-as,而不失去通过 运行它们的能力virsh snapshot-revert

相关内容