我不知道如何在 Ubuntu 中使用“-l”选项 (--listen) tcp 连接启用 libvirt。我认为这是一个错误。
我尝试了以下操作,但没有成功:
https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/557054
但是 libvirtd 只能使用 -d 选项运行。我使用的是 Ubuntu 13.10。我做错了什么?有人能帮我吗?
http://wiki.libvirt.org/page/Libvirt_daemon_is_not_listening_on_tcp_ports_although_configured_to
答案1
我已经找到了解决方案,实际上您还需要向 libvirt-bin 初始化脚本提供 -l 选项。
在主机操作系统的 libvirt 服务中启用 TCP。
Edit /etc/libvirt/libvirtd.conf to set:
listen_tls = 0
listen_tcp = 1
auth_tcp="none"
tcp_port = "16509"
配置 libvirt 服务以监听 TCP
Edit /etc/init/libvirt-bin.conf to add the "-l" argument:
exec /usr/sbin/libvirtd -d -l
重启 libvirt 服务
Invoke: service libvirt-bin restart
**测试 libvirt 使用“-l”参数启动**
Invoke: ps -ef | grep libvirt
验证输出是否包含“-l”参数:
.... /usr/sbin/libvirtd -d -l
来源:http://pineapplesoftware.blogspot.com.tr/2012/11/configuring-unsecure-remote-access-to.html
答案2
由于@Mustafa 的回答中存在一些小的不一致之处,我正在重写一些“步骤”。以下内容在 Ubuntu 12.04 上进行了测试
更新libvirt配置。修改/etc/libvirt/libvirtd.conf
之前:#listen_tls = 0
之后:listen_tls = 0之前:#listen_tcp = 1
之后:listen_tcp = 1添加:auth_tcp =“无”
修改/etc/init/libvirt-bin.conf。(-l 是 –listen 的缩写)
之前:env libvirtd_opts="-d"
之后:env libvirtd_opts="-d -l"修改/etc/default/libvirt-bin。
之前 :libvirtd_opts=" -d"
之后 :libvirtd_opts=" -d -l"重启libvirt,执行命令后确保libvirt重启成功。
# 停止 libvirt-bin && 启动 libvirt-bin
$ ps -ef | grep libvirt
最后一个的输出应该是这样的:
root XXXXX 1 22 07:55 ? 00:00:01 /usr/sbin/libvirtd -d -l
答案3
您需要创建/etc/pki/CA/
证书或使用选项libvirtd
进行配置listen_tls = 0
答案4
解决 Ubuntu 15.10 的问题
$ sudo vi /etc/systemd/system/multi-user.target.wants/libvirt-bin.service
更改行
ExecStart=/usr/sbin/libvirtd $LIBVIRTD_ARGS
以
ExecStart=/usr/sbin/libvirtd -l $LIBVIRTD_ARGS
添加 -l 选项
然后:
$ sudo systemctl daemon-reload
$ sudo service libvirt-bin restart