libvirt 和 spice opengl..不行吗?
libvirt and spice opengl..no way?
我想 运行 opengl with spice on libvirt/qemu
我在 slackware 14.2,libvirt 是最新的 3.8,qemu 是最新的 2.10
我已经编辑了那些文件
/etc/libvirt/qemu.conf
cgroup_device_acl = [
"/dev/dri/renderD128"
]
/etc/cgrules.conf
<video>
<model type='virtio' heads='1' primary='yes'>
<acceleration accel3d='yes'/>
</model>
</video>
我正在组视频,我认为权限还可以
ls -lhd /dev/dri/*
crw-rw----+ 1 root video 226, 0 ott 15 18:39 /dev/dri/card0
crw-rw---- 1 root video 226, 128 ott 15 18:39 /dev/dri/renderD128
机器配置为 运行 with gl
但是当我开始...
LANG=C virsh start pol64
error: Failed to start domain pol64
error: internal error: process exited while connecting to monitor: Could not access KVM kernel module: Operation not permitted
2017-10-15T18:00:13.714865Z qemu-kvm: failed to initialize KVM: Operation not permitted
当然重启了cgmanager和libvirt
已找到解决方案。
首先..wich 用户 运行 qemu?
在我的配置中是"qemu"。
在我的例子中,我们必须将 qemu 用户添加到视频组(视频组拥有 dri/drm 设备)
sudo usermod -aG video qemu
getfacl /dev/dri/renderD128
# file: dev/dri/renderD128
# owner: root
# group: video
user::rw-
group::rw-
other::---
然后我们要编辑/etc/libvirt/qemu.conf 并添加或修改acl
cgroup_device_acl = [
"/dev/null", "/dev/full", "/dev/zero",
"/dev/random", "/dev/urandom",
"/dev/ptmx", "/dev/kvm", "/dev/kqemu",
"/dev/rtc","/dev/hpet", "/dev/vfio/vfio",
"/dev/dri/renderD128"
]
然后重启libvirt
/etc/rc.d/rc.libvirt restart
vm 必须配置 spice、dri 设备(不要 select auto)和 opengl,opengl 仅适用于 "local" 配置,因此没有 tls/server。
我想 运行 opengl with spice on libvirt/qemu
我在 slackware 14.2,libvirt 是最新的 3.8,qemu 是最新的 2.10
我已经编辑了那些文件
/etc/libvirt/qemu.conf
cgroup_device_acl = [
"/dev/dri/renderD128"
]
/etc/cgrules.conf
<video>
<model type='virtio' heads='1' primary='yes'>
<acceleration accel3d='yes'/>
</model>
</video>
我正在组视频,我认为权限还可以
ls -lhd /dev/dri/*
crw-rw----+ 1 root video 226, 0 ott 15 18:39 /dev/dri/card0
crw-rw---- 1 root video 226, 128 ott 15 18:39 /dev/dri/renderD128
机器配置为 运行 with gl
但是当我开始...
LANG=C virsh start pol64
error: Failed to start domain pol64
error: internal error: process exited while connecting to monitor: Could not access KVM kernel module: Operation not permitted
2017-10-15T18:00:13.714865Z qemu-kvm: failed to initialize KVM: Operation not permitted
当然重启了cgmanager和libvirt
已找到解决方案。 首先..wich 用户 运行 qemu? 在我的配置中是"qemu"。 在我的例子中,我们必须将 qemu 用户添加到视频组(视频组拥有 dri/drm 设备)
sudo usermod -aG video qemu
getfacl /dev/dri/renderD128
# file: dev/dri/renderD128
# owner: root
# group: video
user::rw-
group::rw-
other::---
然后我们要编辑/etc/libvirt/qemu.conf 并添加或修改acl
cgroup_device_acl = [
"/dev/null", "/dev/full", "/dev/zero",
"/dev/random", "/dev/urandom",
"/dev/ptmx", "/dev/kvm", "/dev/kqemu",
"/dev/rtc","/dev/hpet", "/dev/vfio/vfio",
"/dev/dri/renderD128"
]
然后重启libvirt
/etc/rc.d/rc.libvirt restart
vm 必须配置 spice、dri 设备(不要 select auto)和 opengl,opengl 仅适用于 "local" 配置,因此没有 tls/server。