我全新安装了 Ubuntu 16.04,这是我计算机上唯一的操作系统。没有安装任何软件包或任何东西。我不想在本地计算机上有图形环境,但我希望能够通过 vnc 远程连接它。我发现vnc服务器附带的软件包是x11vnc。所以我尝试:
apt-get install x11vnc
进而
x11vnc
我收到了:
28/06/2019 15:47:37 x11vnc version: 0.9.13 lastmod: 2011-08-10 pid: 25749
28/06/2019 15:47:37 XOpenDisplay("") failed.
28/06/2019 15:47:37 Trying again with XAUTHLOCALHOSTNAME=localhost ...
28/06/2019 15:47:37
28/06/2019 15:47:37 *** XOpenDisplay failed. No -display or DISPLAY.
28/06/2019 15:47:37 *** Trying ":0" in 4 seconds. Press Ctrl-C to abort.
28/06/2019 15:47:37 *** 1 2 3 4
28/06/2019 15:47:41 XOpenDisplay(":0") failed.
28/06/2019 15:47:41 Trying again with XAUTHLOCALHOSTNAME=localhost ...
28/06/2019 15:47:41 XOpenDisplay(":0") failed.
28/06/2019 15:47:41 Trying again with unset XAUTHLOCALHOSTNAME ...
28/06/2019 15:47:41
28/06/2019 15:47:41 ***************************************
28/06/2019 15:47:41 *** XOpenDisplay failed (:0)
我不知道是否丢失了某些包裹,或者可能还有其他原因导致这种情况发生。
我正在使用 ssh 连接这台机器。
答案1
x11vnc,顾名思义,在 vnc 上共享 X11 显示。你没有 X,所以 x11vnc 没有什么可分享的。
此错误消息表明,x11vnc 想要连接您的 X11 显示器,以获取其内容(以共享到连接的 vnc 客户端)。但是,它无法连接 X 服务器,因为它不存在于您的计算机上。
开发一个共享Linux文本控制台的vnc服务器是可能的,但我的谷歌查询没有得到任何结果。可能没有人开发它,因为任何想要访问 Linux 文本控制台的人都会使用 ssh。
在我看来,对于经验丰富的开发人员来说,它可以在大约两周内开发出来。
然而,当前的 Linux 安装几乎总是使用帧缓冲区。代表着甚至Linux文本控制台也使用显卡的图形模式。对于帧缓冲区,已经存在多个 vnc 服务器,例如这,这或者这。