通过创建新会话在 Ubuntu Desktop 18.04 上运行 VNC 服务器

vin*_*163 5 vnc remote-desktop gnome 18.04

我想创建一个运行 gnome-shell 环境的 VNC 服务器,与控制台中的默认 UI 相同,与控制台会话分开(以便控制台看不到任何内容)。

我试过vnc4servertightvncserver,既不工作。无论我如何配置xstartupgnome-session都无法运行。我没有管理运行Xfdmgnome-panel以同样的方式。当我尝试连接到 VNC 服务器时,我只看到灰屏。但是我可以确认 vnc 服务器正常工作,因为我可以通过设置DISPLAYXAUTHORITY.

有没有办法ubuntu-desktop在新的 X 会话中运行,与控制台会话分开?最好在 VNC 服务器上?

我创建vnc服务器的步骤:

  1. 安装全新的 Ubuntu 18.04 LTS 桌面。
  2. 安装tightvncserver.
  3. 运行vncserver配置并杀死它。
  4. 更改~/.vnc/xstartup和附加:

    export STARTUP="/usr/bin/gnome-session --session=ubuntu --disable-acceleration-check" $STARTUP

  5. 运行vncserver

  6. 使用任何 VNC 客户端连接到 VNC 服务器。仅显示灰色屏幕。
  7. 配置DISPLAYXAUTHORITY并运行gedit。VNC 会话看到一个不完整的gedit窗口。

vin*_*163 6

最后我找到了解决方案。

Gnome 会话似乎不适用于 VNC X 服务器,但 Xvfb 可以工作。这个想法是为会话创建一个 Xvfb 并为 VNC 使用 x11vnc:

Xvfb :1 -screen 0 1280x720x24
Run Code Online (Sandbox Code Playgroud)

然后生成 GNOME 环境:

DISPLAY=:1 gnome-shell --replace
Run Code Online (Sandbox Code Playgroud)

最后用于x11vnc为 Xvfb 创建 VNC 服务器:

x11vnc -display :1
Run Code Online (Sandbox Code Playgroud)