使用 x11 从远程 (MacOS) 计算机在本地 (Linux) 计算机上使用 GUI 程序?

使用 x11 从远程 (MacOS) 计算机在本地 (Linux) 计算机上使用 GUI 程序?

我花了很多时间扫描这些(和其他)论坛以了解如何解决以下情况,但无济于事。希望有人可以分享他们的专业知识!

在我的大学,我使用的是 Linux 机器 (Scientific Linux 7),其中xauth包含:

$ which xauth
   /bin/xauth

我想 (a) 从我的(远程)Macbook(当前XQuartz)运行 GUI 应用程序,以及 (b) 让它们显示在这台 Linux 计算机上。

当我跑步时

ssh -o ForwardX11=yes [email protected]

,系统会提示我输入 Mac 的密码;当我输入它时,我会看到我的 Mac 终端。当我在这个终端中环顾四周时,我能够访问我的 Mac 的文件。这部分一切都很好。

但是,如果我尝试通过 Mac 终端运行 Mac(基于 GUI)程序(如 Linux 计算机上所示),GUI 将在苹果不是在 Linux 机器上。例如,运行

/Applications/texstudio.app/Contents/MacOS/./texstudio

从 Mac 终端(如 Linux 机器上所示)打开 TeXStudio 的 GUI在苹果电脑上不是在Linux机器上!当然,这是有问题的,因为这意味着(a)似乎已经实现,但(b)却失败了。

在 Mac 上,我的/etc/ssh/sshd_config文件包含以下行:

   X11Forwarding yes
   X11DisplayOffset 10
   X11UseLocalhost no

# XAuthLocation added by XQuartz (http://xquartz.macosforge.org)
   XAuthLocation /opt/X11/bin/xauth

;但是,我也尝试过,但X11UseLocalhost yes没有成功。

还要注意,x11 似乎正在“完成其工作”,因为如果我运行类似xeyes或 的东西xclock(在 Linux 计算机上的 Mac 终端中),我就会看到眼睛/时钟(在 Linux 计算机上)。

我在这里遗漏了一些明显的东西吗?

笔记:

  1. 不能对我正在使用的 Linux 机器进行任何更改:它是特定于主要 Linux 计算实验室的一部分,无法进行任何安装/“后端文件”操作。
  2. 我在 Linux 机器和 Mac 上都使用我大学的安全 Wi-Fi。

答案1

您错过了 macOS GUI 应用程序不使用 X11,因此无法使用 SSH 转发到 X11 服务器...它们使用石英以供他们展示。

据我所知,macOS 目前仅支持全桌面远程显示(正如您所确定的,使用 XQuartz 运行的 X11 应用程序除外)。从一台 macOS 设备到另一台 macOS 设备,您可以使用远程桌面;在您的情况下,您需要使用 VNC 之类的东西(在 Mac 上运行 VNC,并使用 VNC 客户端连接到它)。

维基百科远程桌面软件比较对可用选项有很好的概述:寻找支持 macOS 服务器和 Linux 客户端的软件。

相关内容