KVM 映像无法以 virsh 启动,权限被拒绝

12 ubuntu linux-kvm

我的主机操作系统是 Ubuntu Server 11.04(整洁)

按照 Ubuntu 的帮助详细说明之后,我使用创建了一个 KVM 映像

sudo ubuntu-vm-builder kvm hardy --libvirt qemu:///system
Run Code Online (Sandbox Code Playgroud)

图像文件被创建为

-rw-r--r-- 1 root root 438M 2011-06-17 14:39 ubuntu-kvm/tmpK9hbU5.qcow2
Run Code Online (Sandbox Code Playgroud)

我可以通过 sudo virsh -c qemu:///system "list --all" 用 virsh 列出它

Id   Name                 State
----------------------------------
  - ubuntu               shut off  
Run Code Online (Sandbox Code Playgroud)

Buth 当我打电话时

sudo virsh -c qemu:///system "start ubuntu"
Run Code Online (Sandbox Code Playgroud)

错误被抛出:

error: Failed to start domain ubuntu
error: internal error process exited while connecting to monitor: kvm: -drive file=/home/myuser/vmopt/ubuntu-kvm/tmpK9hbU5.qcow2,if=none,id=drive-ide0-0-0,format=qcow2: could not open disk image /home/myuser/vmopt/ubuntu-kvm/tmpK9hbU5.qcow2: Permission denied
Run Code Online (Sandbox Code Playgroud)

用户“myuser”已添加到组 libvirt。

我已经将图像文件及其目录修改为 777,但错误仍然存​​在。

小智 9

KVM 镜像受 selinux 限制。将它们放在 /var/lib/libvirt/images 中就足够了。

http://libvirt.org/drvqemu.html#securityselinux更详细。


小智 6

一个简单的解决方案是编辑 /etc/libvirt/qemu.conf 文件并取消注释以下行:

User = "root"
group = "root"
Run Code Online (Sandbox Code Playgroud)

不要忘记重新启动 libvirtd

  • 这可能会让您运行它,但是安全隐患是什么? (4认同)