2

我正在尝试 ssh 进入服务器并在其上运行 python 脚本。

当我在 mac 上运行命令时,我不断收到错误消息。

File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 443, in clf
gcf().clf()
  File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 369, in gcf
return figure()
  File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 343, in figure
**kwargs)
  File "/usr/lib/pymodules/python2.7/matplotlib/backends/backend_tkagg.py", line 80, in            new_figure_manager
  window = Tk.Tk()
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1688, in __init__
  self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
  _tkinter.TclError: no display name and no $DISPLAY environment variable

我正在使用 ssh -X abc@xyz.com 进行 ssh。这在 ubuntu 上没有任何问题,但在 mac 上会出现此错误。我刚刚转移到mac,我不明白我在这里做错了什么。

4

1 回答 1

2

你有安装 XQuartz 吗? $DISPLAY应该在 OS X 上自动设置为 launchd 套接字,该套接字在访问时会自动启动 XQuartz。一个常见的错误是设置$DISPLAY为:0.0,但我认为这会导致不同的错误。

事情应该是这样的:

% echo $DISPLAY
/tmp/launch-k9XueA/org.macosforge.xquartz:0
于 2012-08-28T03:08:57.090 回答