我正在尝试在 Gentoo 系统上将 Xen 与 virt-manager 一起使用,但 libvirt 守护进程遇到一些问题。当它开始时:
启动 libvirtd ...
/usr/sbin/libvirtd:错误:无法初始化网络套接字。检查 /var/log/messages 或在不带 --daemon 的情况下运行以获取更多信息。
启动-停止-守护进程:无法启动“/usr/sbin/libvirtd”[!! ]
错误:libvirtd 启动失败
但文件'/var/日志/消息' 不存在!
Libvirtd 配置文件(/etc/libvirt/libvirtd.conf):
听_tls = 0
监听 TCP = 1
unix_sock_group = “libvirt”
unix_sock_ro_perm =“0777”
unix_sock_rw_perm =“0770”
日志级别 = 3
log_filters = "3:远程4:事件"
log_outputs = "3:syslog:libvirtd"
谁能帮助我,我做错了什么?)
更新:
我太不专心了,忘记安装 syslog-ng)我在日志中发现守护进程没有启动,因为没有名为 libvirt 的组 - 创建该组后 libvirtd 就可以了
答案1
首先尝试执行以下操作:
$ sudo more /var/log/messages
根据 libvirt.org 上的官方文档:守护进程无法启动,它指出以下更改/etc/libvirt/libvirtd.conf
会将日志记录级别提高到 3:
/etc/libvirt/libvirtd.conf
:
# You need to uncomment this line
log_outputs="3:syslog:libvirtd"
...这应该会向您显示更多信息。随着更高级别的调试出现,并且能够查看/var/log/messages
,如果您看到类似以下的消息:
Feb 6 17:22:09 bart libvirtd: 17576: info : libvirt version: 0.9.9
Feb 6 17:22:09 bart libvirtd: 17576: error : virNetTLSContextCheckCertFile:92: Cannot read CA certificate '/etc/pki/CA/cacert.pem': No such file or directory
Feb 6 17:22:09 bart /etc/init.d/libvirtd[17573]: start-stop-daemon: failed to start `/usr/sbin/libvirtd'
Feb 6 17:22:09 bart /etc/init.d/libvirtd[17565]: ERROR: libvirtd failed to start
然后您需要执行以下操作来修复它:
- 安装CA证书
- 不要使用 TLS,而应使用裸 TCP。在
/etc/libvirt/libvirtd.conf
集合listen_tls = 0
和listen_tcp = 1
. - 不要通过——听。在
/etc/sysconfig/libvirtd
改变LIBVIRTD_ARGS
变量中。
对于第 1 步,CA 证书是我的 Fedora 系统上 openssl 软件包的一部分。我猜想它们也出现在 Genoo 上,但它们可能位于其他包中。
你的libvirtd.conf
#2 已经处理好了。对于 #3,我不相信/etc/sysconfig/libvirtd
Gentoo 的路径是正确的,所以我不确定变量LIBVIRTD_ARGS
在 Gentoo 上的任何位置会在哪里设置。您可能想grep
通过/etc
目录查找该变量名称和字符串--listen
。