我正在尝试通过 ssh 在远程集群上运行 MATLAB。当我在终端中键入 matlab 时,它只会在终端环境中打开 MATLAB 命令行。我的问题是有什么方法可以访问 MATLAB GUI 吗?
最佳答案
是的,您可以显示 GUI。您需要 (i) 在本地计算机上运行的 X-windows 系统和 (ii) 使用 ssh 的 -X 选项来启用 X11 转发。更详细的答案:
- 从您的本地终端,检查 DISPLAY 环境变量是否已设置。例如。从我 mac 上的终端:
echo $DISPLAY
返回/private/tmp/com.apple.launchd.y9pXfRNnTu/org.macosforge.xquartz:0
如果 DISPLAY 环境变量是未设置,您可能需要正确安装 X 服务器(例如,对于 Mac OS X,它是 X11.app)。 - 当您使用 ssh 登录到远程机器时,使用 -X 选项启用 X11 转发。例如。从您的本地终端类型:
ssh -X username@remotehost.com
其中 username 和 remotehost 分别是您的用户名和远程主机名。使用 -X 选项,SSH 将使这一切神奇地工作:ssh 将远程计算机上的 DISPLAY 环境变量设置为 ssh 正在监听的端口,并将图形数据传送回本地 DISPLAY 环境变量中的地址,它应该指向您的本地 X 服务器。
顺便说一句,除非你就在集群网络旁边,否则这很可能是 !@#$!@#$ 缓慢且烦人。如果您是学生,我强烈建议您花钱买一个学生版的 Matlab,这样您就可以在本地运行 GUI。学生版没那么贵。
关于matlab - 通过 ssh 运行 Matlab GUI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33600017/