Debianのパッケージでlibvirtdを導入している。libvirtグループに所属していれば一般ユーザーでもvirt-managerで仮想マシンの管理ができるが、virshでの操作が行えない。一般ユーザーにはデフォルトのホストが設定されていないからだ。

仮想マシンが稼働している環境でも一覧が表示されない。

$ virsh list
 Id    Name                           State
----------------------------------------------------

接続先のURIが指定してみると表示される。

$ virsh -c qemu:///system list
 Id    Name                           State
----------------------------------------------------
 1     www                            running

rootにはデフォルトの接続先が設定されている。これは/etc/libvirt/libvirt.confで設定できる。

$ cat /etc/libvirt/libvirt.conf | grep uri_default
#uri_default = "qemu:///system"

これは一般ユーザーには適用されない。一般ユーザーは環境変数を設定する必要がある。

LIBVIRT_DEFAULT_URIにURIを設定すると接続先指定なしで接続できる。

$ export LIBVIRT_DEFAULT_URI="qemu:///system"
$ virsh list
 Id    Name                           State
----------------------------------------------------
 1     www                            running

.bashrcで常に適用されるようにする。

$ echo 'export LIBVIRT_DEFAULT_URI="qemu:///system"' >> ~/.bashrc

参考:libvirt: Connection URIs

4月 13th, 2014

Posted In: ソフトウェア

タグ: , , ,

One Comment