我已经使用KVM很久了,每次我尝试将virt-manager用作非root用户时,都必须输入sudo密码。如果大多数时候都使用virt-manager,这可能非常的烦人。我将向您展示一个简单的方法,将virt-manager用作非root用户,只需创建一个libvirt组并向其中添加一个标准用户帐户即可。安装KVM可参考在Arch Linux/Manjaro上安装KVM、QEMU和Virt Manager的方法。
要将virt-manager用作非root用户,请执行以下步骤 步骤1:创建要使用的组 首先检查组是否已经存在,如果不存在则创建它 sudo getent group | grep libvirt 一些发行版可能正在使用libvirtd: sudo getent group | grep libvirtd 如果不存在,请将其添加为系统组: sudo groupadd --system libvirt 步骤2:将用户帐户添加到libvirt组 现在该组可用,将您的用户帐户添加到该组: sudo usermod -a -G libvirt $(whoami) newgrp libvirt 验证该用户已添加到libvirt组: $ id $(whoami) uid=1000(jmutai) gid=1000(jmutai) groups=1000(jmutai),998(wheel),992(kvm),988(storage),968(libvirt),108(vboxusers) 步骤3:编辑libvirtd配置文件以添加组 打开文件/etc/libvirt/libvirtd.conf进行编辑: sudo vim /etc/libvirt/libvirtd.conf 将UNIX域套接字组所有权设置为libvirt(在第85行附近): unix_sock_group = "libvirt" 设置R/W套接字的UNIX套接字权限(在第102行附近): unix_sock_rw_perms = "0770" 进行更改后,重新启动libvirt守护程序: sudo systemctl restart libvirtd.service 检查服务状态: $ systemctl status libvirtd.service 会看到已加载/usr/lib/systemd/system/libvirtd.service、Active: active (running)等信息。 步骤4:启动virt-manager 从命令行或开始菜单中启动Virtual Machine Manager: $ virt-manager 您应该能够创建VM,而不会出现权限错误:
这时您应该能够以非root用户身份使用virt-manager。
注意事项 需要安装KVM虚拟化软件包组才能获得包括virt-manager在内的工具。 同时如果不能以非root用户身份使用virt-manager,请尝试阅读您的libvirtd.conf文件以查看要修改的相关部分。
相关主题 |