无法连接到Virtual Machine Manager上的libvirt?

我正在尝试使用KVM和Virtual Machine Manager GUI安装Windows 8虚拟机。在安装KVM和VMM并启动VMM后,我遇到了错误“无法连接到libvirt”。
Verify that:
   - The 'libvirt-bin' package is installed
   - The 'libvirtd' daemon has been started
   - You are member of the 'libvirtd' group

我尝试了apt-get install libvirt-bin,并且已经安装成功。
但是我不知道如何检查守护进程是否已启动,或者如何检查/添加自己作为成员。

请注意,我也在超级用户上发布了完全相同的问题...希望这不会导致我的问题被评分降低。 - Daniel Toebe
1个回答

刚刚为自己解决了这个问题。
在使用机器virt-manager时,生成一个公钥对。请注意,它会被放置在默认的密钥文件中。如果你已经有一个密钥,它会要求你覆盖它。如果你选择覆盖,那么你需要在之前使用过的所有地方重新分发这个密钥。
# ssh-keygen -t rsa

远程登录无需密码,或者使用短语密码,需要将SSH密钥分发到被管理的系统中。使用ssh-copy-id来完成此操作。将root更改为您要作为守护程序登录的用户,以root身份登录是有风险的。我在主机上使用我的本地用户。将id_rsa.pub替换为您上面生成的密钥的公共部分。id_rsa.pub是默认值。您将被要求通过ssh登录到远程机器上进行复制。这是您的用户(在我的情况下是root)的ssh密码,而不是您刚刚创建的密钥的密码短语。
# ssh-copy-id -i ~/.ssh/id_rsa.pub root@host2.example.com
root@host2.example.com's password:

现在尝试使用ssh登录主机。检查.ssh/authorized_keys文件,确保没有添加意外的密钥。简单地使用cat命令查看文件是否相同即可。
对于您希望通过virt-manager从当前系统登录的所有其他系统,请执行此步骤。
现在,为了在GUI中实现自动化,您需要将密钥添加到ssh-agent中,以便它可以代表您进行登录。
# ssh-add ~/.ssh/id_rsa.pub

现在你应该能够通过终端登录到机器,而不需要输入任何密码或密钥。
现在尝试使用virt-manager。
如果你在认证代理时遇到问题,请查看来源中关于我在这个阶段遇到的一个错误的最后一个链接。
来源:
管理虚拟主机:

https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Virtualization_Administration_Guide/chap-Virtualization_Administration_Guide-Remote_management_of_virtualized_guests.html

shh-agent bug:

https://bugs.launchpad.net/ubuntu/%2Bsource/openssh/%2Bbug/201786

似乎ssh-agent在某些时候会崩溃,并且由于某种原因无法接受来自调用ssh-add的密钥。对此并不清楚,但建议设置SSH_AUTH_SOCK=0可以帮助我解决这个问题。
一旦密钥及其链接到代理程序中,您应该可以通过virt-manager自动登录。

有没有什么线索可以用带密码的钥匙来完成这个任务?我更倾向于同时使用两者。 - flickerfly