故障环境:
在 CentOS 6.5 上安装了 kvm libvirt virt-manager 等虚拟化组件,使用 root 用户远程 ssh -X 登陆时,运行 virt-manager 没有问题,而使用 普通用户 远程 ssh -X 登陆时报如下错误:

Unable to open a connection to the libvirt management daemon.
Verify that:
- The 'libvirtd' daemon has been started
Libvirt URI is: qemu:///system
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/connection.py", line 1185, in
_open_thread
self.vmm = self._try_open()
File "/usr/share/virt-manager/virtManager/connection.py", line 1167, in
_try_open
flags)
File "/usr/lib64/python2.7/site-packages/libvirt.py", line 102, in openAuth
if ret is None:raise libvirtError('virConnectOpenAuth() failed')
libvirtError: authentication failed: Not authorized.

解决方法:
在网络上找到一篇文章,按照相应方法操作后,问题得以解决,下面是具体步骤:

1、修改 /etc/libvirt/libvirtd.conf 文件,将如下内容的注释取消掉,使其生效:

unix_sock_group = "libvirt"
unix_sock_rw_perms = "0770"
auth_unix_rw = "none"

2、

groupadd -g 170 libvirt #创建指定gid号的libvirt组;
usermod -a -G libvirt xxx #为 xxx 用户添加 libvirt 补充组;

3、修改 /var/run/libvirt 目录属组:

cd /var/run/
chown -R root:libvirt libvirt

4、重新启动 libvirtd 服务:

service libvirtd restart

此时,再用普通用户 ssh -X 登陆服务器,执行 virt-manager 即可。