我已经做了一些search,发现似乎有可能通过ssh将X11应用程序转发到Mac机器(例如,ssh进入一个Linux机器并启动一个X11应用程序,并显示在Mac的显示器上)。
我想知道的是,如果这可以做到相反(即ssh进入一台Mac机,并启动一个应用程序,并显示在Linux显示)。 如果这是可能的,我该如何去设置它,更重要的是哪些OS X应用程序可以工作?
这些说明应该可以工作,但我刚刚花了最后一个小时,还没有得到它的工作。
此外,您可能需要最新版本的X11 for Mac XQuartz 。
编辑
XQuartz 2.3.3.2(xorg-server 1.4.2-apple42)在首选项下有一个安全选项卡,带有一个名为“允许来自networking客户端的连接”的选项。 我怀疑这个设置会有所作为。
这只适用于X11应用程序(因此“X11转发”;-)),也许不是你感兴趣的。只有获得“真正”的MacOS X应用程序才能显示的方法是使用某种远程桌面/ vnc你可以通过SSH隧道)。
只有X11应用程序本身可以通过X11转发(所以大多数OSX应用程序将无法正常工作)。 但是,请查看远程桌面软件。 它不会像X11一样快,但应该允许大多数应用程序正常工作(OpenGL可能无法正常工作)。 远程桌面软件的这种比较应该让你开始。
当然。 您将需要至less安装一个X11服务器和您的SSH服务器。 如上所述,这只会让你转发在X内运行的应用程序。因此,值得研究的跨平台的vnc,显然包含在OS X 10.4+
在X术语中,我相信你想从Linux服务器上运行Mac客户端。 所以你当然不需要在Mac上安装X服务器。
正如macosxhints.com提示中所提到的,您需要做的是在Mac上编辑/ etc / sshd_config
#X11Forwarding no
至
X11Forwarding yes
如果Mac运行的是10.4或更高版本,那就完了。 “ssh -X你@ yourmac / usr / X11 / bin / xterm”现在可以工作了。
如果Mac仍在运行10.2或者10.3,那么你有更多的工作来configurationsshd来加载X11authenticationcookie,因为那时OSX中包含的sshd程序并不知道OSX中包含的xauth程序。 IIRC,您需要手动重新编译sshd或使用xauth。