首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Ubuntu服务器上不设置Xserver就连接到kvm来宾的vnc

在Ubuntu服务器上不设置Xserver就连接到kvm来宾的vnc
EN

Ask Ubuntu用户
提问于 2019-08-13 02:43:59
回答 2查看 4.2K关注 0票数 2

我有一个没有X11的干净安装的Ubuntu服务器,没有像ubuntu桌面、gdm、lightdm这样的桌面环境。我安装了tightvnc,qemu,并通过命令行准备了一个来宾vm,其中virt指向端口5900处使用vnc。

我理解在主机上拥有桌面环境(在本例中是Ubuntu服务器)以连接和监视主机本身的必要性。

但是,我不明白主机的桌面环境对于只连接到客户vm的情况是否是必需的。我认为它似乎复制了主机kvm和来宾vm的GUI。

我检查了一些指南,它们指向使用X11的vncserver。但是它与kvm上的vnc设置有什么关系,因为netstat告诉我qemu (5900)和vncserver (5901)正在监听两个端口?

到目前为止,我可以连接到端口5901,当然,我还可以通过图形GUI消息了解缺少X11。但是,从另一台PC机通过局域网连接到端口5900,仍然会陷入“连接”状态。

如何在不安装Ubuntu服务器18.04.2的桌面环境的情况下为来宾vm启用vnc?

EN

回答 2

Ask Ubuntu用户

回答已采纳

发布于 2019-08-13 16:09:03

好的,我终于可以让它起作用了,所以我在这里张贴答案,以防有人需要它。

简而言之,我不需要在Ubuntu服务器上安装vncserver和桌面环境,就可以在KVM来宾上使用vnc。KVM确实带有内置的vncserver,因此它有不同的配置。在试图为主机Ubuntu服务器安装和配置vncserver时,我犯了一个很大的错误,因为在我的情况下,它是完全无用的。

要为KVM启用vnc,只需在/etc/libvirt/qemu.conf中启用以下两个选项

代码语言:javascript
运行
复制
vnc_listen = "0.0.0.0"
vnc_password = your-password

我的第二个错误是没有为vnc设置密码,所以vncviewer总是无法连接,即使在密码被设置为空的情况下也是如此。

之后,在/etc/libvirt/libvirtd.conf中启用以下选项

代码语言:javascript
运行
复制
listen_tcp = 1

当然,再次重新启动libvirt服务。

代码语言:javascript
运行
复制
service libvirtd restart

现在,可以通过类似于以下命令行安装KVM来宾:

代码语言:javascript
运行
复制
virt-install [...] --graphics vnc,port=5900,listen=0.0.0.0

从您想要连接到Ubuntu服务器的客户端PC中,确保转发vnc端口,类似于:

代码语言:javascript
运行
复制
ssh -v -L 5900:127.0.0.1:5900 -N -f 192.168.1.100

地址127.0.0.1:5900是Ubuntu服务器上vnc的默认本地主机地址。我不启用防火墙,所以我没有必要将端口5900添加到防火墙。

最后,在客户端PC上打开vncviewer并连接到vnc://127.0.0.1:5900,然后提供密码并享受您的机器。

票数 2
EN

Ask Ubuntu用户

发布于 2019-08-13 07:29:02

据我所知,KVM使用两个端口,分别用于输入(模拟键盘和鼠标)和输出(屏幕)。如果您只使用终端,那么使用SSH连接通常更好。

票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1165313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档