我正尝试按照 here 中所述,在 »推送模式« 中创建给定 VM 的备份。我已经尝试了很多 backup-xml 的变体,但没有一个通过验证测试。这包括 这里发布的示例(第一个)。另外我刚刚运行了那个命令:
sudo virsh backup-begin vm1 && sudo virsh backup-dumpxml vm1
使用默认值转储备份作业的自动生成的 XML。就我而言,它看起来像这样:
<domainbackup mode='push'>
<disks>
<disk name='vda' backup='yes' type='file' backupmode='full' index='4'>
<driver type='qcow2'/>
<target file='/home/xxx/.local/share/libvirt/images/vm1.qcow2.1684137281'/>
</disk>
<disk name='sda' backup='no'/>
</disks>
</domainbackup>
所以我把那个输出放在一个文件中(
bg.xml
)然后运行:sudo virsh backup-begin vm1 ./bg.xml
比再次显示错误:
error: XML document failed to validate against schema: Unable to validate doc against /usr/share/libvirt/schemas/domainbackup.rng
Extra element disks in interleave
Element domainbackup failed to validate content
知道这里出了什么问题——因为自动生成的内容无法通过验证,所以我失去了想法。
我已经在 IRC 上回答了这个问题,所以为了完整起见:
问题是 'index="4"' 部分,它是一个仅输出元素,因此输入模式不允许。 XML 的其余部分是正确的。