无法让 VNC 适用于多用户 Ubuntu 16 和 18 桌面(有没有更好的远程解决方案?)

无法让 VNC 适用于多用户 Ubuntu 16 和 18 桌面(有没有更好的远程解决方案?)

我的工程团队有四台特殊的共享计算机,它们运行着 Ubuntu Desktop 16.04 和 18.04,它们位于距离我们的办公室 5 分钟步行路程的实验室中。我们需要远程桌面访问这些机器(例如,我们有一些无法在 SSH 会话中运行的图形测试工具),并且我们希望能够在这些系统上使用单独的用户帐户,以便我们可以拥有单独的共享/用户目录等。

我尝试过 Vino 和 x11vnc。这两种解决方案仅适用于单个 Ubuntu 用户帐户,但当登录的 VNC 用户尝试切换到他们的个人 Ubuntu 帐户时(当出现 Ubuntu 用户选择屏幕时),VNC 屏幕变黑,并且键盘/鼠标控制对远程系统没有任何影响。如果我去实验室并手动切换回物理 PC 上的原始用户帐户,那么 VNC 会话将再次可用。

我尝试过的事情:

  • 尝试了 Ubuntu 16 与 18,以及 x11vnc 与 Vino。结果完全一样 - 当连接的用户尝试切换帐户(而不是注销等)时,当用户选择屏幕出现在物理桌面上时,VNC 客户端屏幕变为空白且无法使用。
  • 遵循这些说明将 x11vnc 配置为在启动时启动(与默认的 Vino 设置不同,默认的 Vino 设置仅在配置了 Vino 的用户登录后启动)。当我这样做时,我可以通过 VNC 登录任何 ubuntu 用户帐户,但是一旦我登录,任何切换到另一个 ubuntu 帐户的尝试都会导致 VNC 客户端出现黑屏问题。所以基本上 VNC 适用于单个用户特定的会话,然后它需要在实验室中手动干预或重新启动以将 X11vnc 重置为可用状态。
  • 将 Vino 配置为对每个用户实例使用唯一端口,然后手动登录所有本地用户帐户(启动他们的 Vino 服务器实例)。这很有趣,因为一次只有一个 VNC 会话可用(只有一个可以与计算机交互,其他的要么是黑屏,要么是冻结的屏幕)。但是当我尝试切换帐户时,所有 VNC 客户端再次变得不可用。如果我手动切换到其他登录帐户之一,该用户的 VNC 会话将变为可交互/可用。

我的问题:

  • 是否可以改变用户选择屏幕破坏 VNC 客户端的这种行为?
  • 是否有其他兼容 Ubuntu 16/18 的远程桌面客户端可以在多用户环境中允许使用图形远程桌面?(我认为 TeamCity 可能会起作用,但不幸的是,这在我们的环境中是被禁止的工具。)

谢谢!

答案1

我在使用 Ubuntu 18.04 和 x11vnc 时遇到了同样的问题。我通过使用 lightdm 而不是 gdm3 解决了这个问题。请确保相应地配置您的 x11vnc 服务。

答案2

可能是由于 GUI 会话控制锁,我已更新 .vnc/xstartup 以在启动窗口管理器之前取消设置会话变量,这样就可以让多个用户会话在 18.04 上正常工作。

取消设置 SESSION_MANAGER 取消设置 DBUS_SESSION_BUS_ADDRESS

遵循更多有用/完整的说明
https://wiki.archlinux.org/index.php/TigerVNC#Running_vncserver_for_virtual_(headless)_sessions

相关内容