如何通过SSH在远程Linux服务器上启动GUI软件?

时间:2017-03-09 13:29:59

标签: linux matlab shell ssh server

我正在尝试从Windows 7 PC打开安装在远程Linux服务器上的Matlab软件。我使用SSH安全shell连接Linux服务器。成功连接后,我可以查看和访问我的用户帐户下的文件夹。我可以在SSH安全shell窗口中使用以下命令启动Matlab软件:

[sushma @ scorpio home] $ matlab

执行此操作时,SSH安全shell窗口中将显示以下消息:

MATLAB正在选择SOFTWARE OPENGL渲染。 没有指定协议

                               < M A T L A B (R) >
                     Copyright 1984-2015 The MathWorks, Inc.
                     R2015b (8.6.0.267246) 64-bit (glnxa64)
                                 August 20, 2015

从上面的消息看,软件似乎正在运行。我想访问该软件的GUI。

2 个答案:

答案 0 :(得分:0)

尝试ssh -X

来自ssh手册:

  

-X启用X11转发。这也可以在配置文件中基于每个主机指定。

     

应谨慎启用X11转发。能够绕过远程主机上的文件权限的用户(for   用户的X授权数据库)可以访问本地X11显示器                通过转发的连接。然后,攻击者可以执行诸如击键监控之类的活动。

     

因此,默认情况下,X11转发受X11 SECURITY扩展限制。请参考ssh   -Y选项和ssh_config(5)中的ForwardX11Trusted指令以获取更多信息                信息。

     

-Y启用可信X11转发。受信任的X11转发不受X11 SECURITY扩展控件的约束。

答案 1 :(得分:0)

对我有用的步骤:

  1. 使用ssh -X标志
  2. 连接到服务器
  3. 使用matlab &执行Matlab(您应该在本地计算机上看到Matlab打开)
  4. 使用命令opengl info在Matlab中检查是否正在使用软件或硬件opengl(如果您在加载opengl时遇到问题,请转到步骤2并执行matlab -softwareopengl &
  5. 使用run <script>
  6. 运行您的gui脚本

    如果脚本应该独立于ssh连接运行,我建议使用程序tmux并在tmux会话中重复步骤2-4