我已经从源代码安装了 qemu 并且/dev/kvm
模块kvm-intel
存在。但是,没有kvm
或libvirt
组可以添加用户。
$ grep virt /etc/group
$ grep kvm /etc/group
$
$ ls -l /dev/kvm
crw-rw----+ 1 root root 10, 232 ژوئن 20 12:13 /dev/kvm
$ lsmod | grep kvm
kvm_intel 217088 0
kvm 598016 1 kvm_intel
irqbypass 16384 1 kvm
$ sudo modprobe kvm_intel
$
目前,当用户想要使用 -enable-kvm 时,他会收到权限被拒绝的错误
$ qemu-system-x86_64 -m 4000 -smp cores=2 -hda win7_64_snap_new.img -boot c -usbdevice tablet -enable-kvm
qemu-system-x86_64: -usbdevice tablet: '-usbdevice' is deprecated, please use '-device usb-...' instead
Could not access KVM kernel module: Permission denied
qemu-system-x86_64: failed to initialize KVM: Permission denied
答案1
由您来创建该组并设置为 KVM。
sudo addgroup kvm
将创建该组,
sudo adduser ${USER} kvm
会将您添加到组中,并创建一个/etc/udev/rules.d
包含以下内容的文件
KERNEL=="kvm", GROUP="kvm", MODE="0660"
将确保组成员kvm
可以访问KVM设备节点。 (命名文件40-permissions.rules
以匹配链接的说明。)
udev
除非您卸载并重新加载 KVM 模块,否则可能不会考虑这些规则,但您不需要这样做:
sudo chown root:kvm /dev/kvm
sudo chmod 0660 /dev/kvm
将暂时适当地设置设备节点。