我遇到了这个问题,并且在我的研究中没有找到答案。 SuperUser 上有一篇类似的帖子,但近 10 个月来还没有发表评论,更不用说回复了。也许这不是它的最佳位置,因为它与 Linux 上的 KVM/virsh/QEMU 有关。
工作正常:
sudo virsh snapshot-create-as --domain TEST_RUNNINGDISKS --name "backup-TEST_RUNNINGDISKS" --no-metadata --atomic --disk-only --diskspec vda,snapshot=external
不起作用:
sudo virsh snapshot-create-as --domain TEST_RUNNINGDISKS --name "backup-TEST_RUNNINGDISKS" --no-metadata --atomic --disk-only --diskspec vda,snapshot=external --diskspec vdb,snapshot=external
返回:
error: internal error: unable to execute QEMU command 'transaction': Could not create file: Permission denied
我还通过使用 QEMU QMP 直接尝试了这一点。
脚本:
#!/bin/sh
TEST='{"execute":"transaction","arguments":{"actions":[{"type":"blockdev-snapshot-sync","data":{"device":"drive-virtio-disk0","snapshot-file":"/media/data/kvm/TEST_RUNNINGDISKS-backup.qcow2"}},{"type":"blockdev-snapshot-sync","data":{"device":"drive-virtio-disk1","snapshot-file":"/media/data/kvm/TEST_RUNNINGDISKS-1-backup.qcow2"}}]}}'
virsh qemu-monitor-command TEST_RUNNINGDISKS --pretty $TEST
错误:
sudo ./test.sh
{ "id": "libvirt-83", "error": { "class": "GenericError",
"desc": "Could not create file: Permission denied"
}
}
答案1
我发现了问题。 18.04 的 Ubuntu 软件包中包含的 qemu-kvm 版本是 2.11真的旧的,显然没有能力以这种方式处理多个磁盘。我进行了擦除并重新加载到 20.04,其中包括 qemu-kvm 版本 4.2。症状已经没有了。