使用SSH屏幕远程启动IPython,然后分离并注销
作者:互联网
我的局域网上有一台计算机,我想在该计算机上运行IPython Notebook服务器.该计算机没有头,因此我只能使用SSH访问此计算机.我试图通过屏幕启动IPython Notebook,然后分离,但是内核由于X服务器错误而重新启动.
具体来说,我做了以下工作:
> SSH进入远程盒:ssh -X 1.1.1.1
>开始或重新连接到最后一个屏幕:屏幕-RD
>启动笔记本ipython笔记本
>分离并注销:ctrl-a-d,退出
远程Notebook服务器可以正常工作,直到我注销为止,然后尝试创建matplotlib图.我什么时候得到
Kernel Restarting
The kernel appears to have died. It will restart automatically.
来自客户的网络浏览器,以及
-c: cannot connect to X server localhost:10.0
2013-08-01 10:28:48.072 [NotebookApp] KernelRestarter: restarting kernel (1/5)
WARNING:root:kernel 6e0f5395-6ba7-44c8-912f-1e736dd66517 restarted
在服务器上.
由于缺少X资源,似乎注销后笔记本无法立即绘图.有人对此有解决方案吗?
解决方法:
Ipython在使用ssh -X创建的X会话中创建绘图(或其他任何X图形,例如traitsui UI元素).当您注销时,ssh隧道会与该X会话一起关闭,因此会出现错误.如果没有ssh隧道,地块将无处可寻.
假设您在服务器上没有物理终端可用来查看绘图等,则可以通过告诉IPython Notebook在线显示绘图来查看matplotlib绘图.请注意,在当前版本的ipython中,图是静态png的图.我不确定traitsui是否可以做类似的事情?
有几种方法可以做到这一点:
>使用内联%pylab导入pylab模块
>使用内联%matplotlib导入matplotlib(不确定旧版本中是否可用)
>使用ipython笔记本–pylab = inline运行ipython
> configure ipython以始终使用pylab内联:运行ipython配置文件创建,然后在ipython_notebook_config.py中查找“ inline”,该文件位于您的ipython配置文件目录-〜/ .config / ipython / profile_default /在Ubuntu上.
标签:ipython,ssh,ipython-notebook,enthought,python 来源: https://codeday.me/bug/20191030/1969041.html