Ale*_*x B 9 ssh x-windows macos
我需要在远程 Mac 机器上运行 Mac 应用程序并在本地 Linux 机器的 X 服务器上显示它(互联网上的很多文章似乎都在详细说明您将如何以相反的方式进行)。
$ ssh -X mac-box
$ cd /Developer/Applications/Xcode.app
$ ./Contents/MacOS/Xcode
Sat Oct 3 20:41:26 mac-box.local Xcode[15634] <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL.
^C
Run Code Online (Sandbox Code Playgroud)
$DISPLAY变量似乎是空的。它应该是什么样子才能使转发正常工作?如果 Mac 的 Aqua 是 X,那么你就不需要运行 X (XQuartz) 在 Mac 上启动其他 X 程序......
所以:不,我认为你不能这样做。
但是,为了帮助您入门,我首先尝试将真正的 X 程序转发到您的 Linux 机器:
在您的 Mac 上:如果您还没有安装 XQuartz(如 OS X 10.6 DVD 上可选安装的 XQuartz 2.3.4,或从XQuartz 项目下载最新版本),请安装它。
在您的 Mac 上:使用或使用Apple 的启用 X11 转发中的命令更改X11Forwarding no为X11Forwarding yes(并确保#该行前面没有哈希 ( ))。这也将确保自动设置变量。sudo vi /private/etc/sshd_configsedDISPLAY
在您的 Linux 机器上:
ssh -Y 用户@mac-box 终端
(接下来的一些步骤可能包括谷歌搜索Xephyr(或旧的Xnest)。如果你遇到键盘问题:谷歌xmodmap,或xev用于调试。或者字体问题:谷歌xfs和xset +fp tcp/mac-box:7100。但我怀疑你能用这种方式运行 Aqua 程序。)