virt-manager SSH连接无法查看虚拟机图形界面
起因
内网有个机器KVM上装了windows,临时想用一下,从Virt-Manager中添加了qemu+ssh连接,但是查看画面时提示错误
Error connecting to graphical console:
Guest is on a remote host, but is only configured to allow local file descriptor connections.
listen_tcp
搜索之后,找到/etc/libvirt/libvirtd.conf配置中,listen_tcp = 1这一行的注释去掉,重启libvirtd服务后,还是不行。
libvirtd-tcp.socket
问AI,找到了libvirtd-tcp.socket这个服务,启动它
sudo systemctl start libvirtd-tcp.socket
提示
Job failed. See "journalctl -xe" for details.
又问了一圈,要先停止libvirtd服务,再启动libvirtd-tcp.socket,最后再启动libvirtd服务
sudo systemctl stop libvirtd
sudo systemctl enable --now libvirtd-tcp.socket
sudo systemctl start libvirtd
ss -tulnp | grep 16509
tcp监听出来了,但是virt-manager还是同样的提示。
qemu.conf
AI又说,qemu+ssh根本不走tcp,其实配置在/etc/libvirt/qemu.conf中,于是去掉了spice_listen的注释。
spice_listen = "0.0.0.0"
还是不行,然后去看虚拟机的设置。Display Spice中的Listen Type是None,因为之前用的核显加速。
如果不用核显加速的话,这边改掉应该就可以了。
最后修改于 2026-08-11