libvirt创建后备文件后“权限被拒绝”

时间:2018-06-06 13:05:07

标签: qemu kvm libvirt

我已经用wirt-manager创建了一个虚拟机,在启动时安装了一个带有iso的Win10。几个重新启动,已安装的软件。 一切都很好。从叠加层开始创建叠加层。一切都很好。 在顶部创建第二个叠加层。基本图像上的“权限被拒绝”(W_64_10_v1.img)。其他覆盖较少且权利相同的机器工作正常。

为什么我不能启动机器? /哪个流程缺少权利?

图像和支持链可能是正确的,因为我可以使用sudo qemu-system ...启动图像。

virsh #start W_64_10_v1

error: Failed to start domain W_64_10_v1
error: internal error: process exited while connecting to monitor:
2018-06-06T12:55:42.062395Z qemu-system-x86_64: 
-drive file=/media/img/SharedImages/qemu18/W_64_10_v1_daemon.ovl,
format=qcow2,if=none,id=drive-ide0-1-0: 
Could not open backing file: Could not open backing file: 
Could not open '/media/img/SharedImages/qemu18/W_64_10_v1.img': 
Permission denied

virsh版本

Compiled against library: libvirt 4.0.0
Using library: libvirt 4.0.0
Using API: QEMU 4.0.0
Running hypervisor: QEMU 2.11.1

/etc/libvirt/qemu.conf (摘录)

dynamic_ownership = 1
user = "root"
group = "root"

Filepermissiones:(将每个文件添加到文件中...无法正常工作)

-rwxrwxrwx 1 root root 193K Jun  6 14:41 W_64_10_v1_daemon.ovl
-rwxrwxrwx 1 root root 193K Jun  6 14:41 W_64_10_v1_daemon.ovl.backup
-rwxrwxrwx 1 root root 135M Jun  6 14:41 W_64_10_v1_F.ovl
-rwxrwxrwx 1 root root  51G Jun  6 14:41 W_64_10_v1.img

1 个答案:

答案 0 :(得分:0)

原因:错误地创建了支持文件/覆盖。 在创建过程中我没有使用-F开关。

Base.img        (ok - Win 10 Installation starting)
FirstFloor.ovl  (ok - Win 10 Installation starting)
SecondFloor.ovl (permission denied -> Base.img) => assumed Bug
Roof.ovl        (permission denied -> Base.img) => assumed Bug

创建(如何创建错误)

me@VM:/storage$ qemu-img create -f qcow2 Base.img 50G
me@VM:/storage$ qemu-img create -f qcow2 -b Base.img FirstFloor.ovl
me@VM:/storage$ qemu-img create -f qcow2 -b FirstFloor.ovl SecondFloor.ovl
me@VM:/storage$ qemu-img create -f qcow2 -b SecondFloor.ovl Roof.ovl

这是因为假定RAW,这会导致错误。

你应该怎么做:

qemu-img create -f qcow2 Base.img 50G
qemu-img create -f qcow2 -F qcow2 -b Base.img FirstFloor.ovl
qemu-img create -f qcow2 -F qcow2 -b FirstFloor.ovl SecondFloor.ovl
qemu-img create -f qcow2 -F qcow2 -b SecondFloor.ovl Roof.ovl

如何解决已存在的问题

qemu-img rebase -f qcow2 -b Base.img -F qcow2 FirstFloor.ovl
qemu-img rebase -f qcow2 -b FirstFloor.ovl -F qcow2 SecondFloor.ovl
qemu-img rebase -f qcow2 -b SecondFloor.ovl -F qcow2 Roof.ovl

寻求支持:Peter Krempa(红帽) 相关的bugrequest:https://bugzilla.redhat.com/show_bug.cgi?id=1588373