Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

B.2.2. Failed to connect socket ... : Permission denied

現象
virsh コマンドを実行すると、以下のエラー(または同様のもの)が表示されます。
$ virsh -c qemu:///system list
error: Failed to connect socket to '/var/run/libvirt/libvirt-sock': Permission denied
error: failed to connect to the hypervisor
調査
ホスト名が指定されていない場合、QEMU への接続はデフォルトで UNIX ソケットを使用します。このコマンドを root として実行したエラーがない場合は、/etc/libvirt/libvirtd.conf の UNIX ソケットオプションが誤って設定されている可能性があります。
解決方法
UNIX ソケットを使用して非 root ユーザーとして接続するには、/etc/libvirt/libvirtd.conf で以下のオプションを設定します。
unix_sock_group = <group>
unix_sock_ro_perms = <perms>
unix_sock_rw_perms = <perms>
注記
virsh を実行しているユーザーは、unix_sock_group オプションで指定した グループ のメンバーである必要があります。