Linux系统远程连接jupyter notebook

本文章应用于,希望在本地,远程连接服务器上的jupyter,进行训练的情况。(如本地算力不足,希望连接其他主机或服务器进行相关的训练、推理等)

目录

1、下载jupyter 

2、卸载jupyter

3、生成config文件(存储配置信息)

4、生成密码输入ipython,进入终端ipython,生成密码

5、编辑配置文件

6、启动jupyter notebook

7、客服端本地映射

8、在电脑浏览去输入localhost:【c】




1、下载jupyter 

pip3 install jupyter 

如果有了就不用下载了。

2、卸载jupyter
如果想卸载jupyter notebook的话,建议采用下面的方法。

(本人在尝试的时候发现,直接使用pip3 uninstall jupyter是卸载不干净的,aka使用jupyter notebook的时候jupyter还能跑,跟打死的蟑螂活过来一样,所以建议采用下面的方法)

pip uninstall -y zipp traitlets pyrsistent importlib-resources attrs wcwidth \
tornado pyzmq pycparser pure-eval ptyprocess parso nest-asyncio \
jupyter-core jsonschema fastjsonschema executing entrypoints \
asttokens webencodings stack-data soupsieve pygments \
prompt-toolkit pickleshare pexpect nbformat matplotlib-inline \
MarkupSafe jupyter-client jedi decorator cffi backcall tinycss2 \
psutil pandocfilters nbclient mistune jupyterlab-pygments \
jinja2 ipython defusedxml debugpy bleach beautifulsoup4 argon2-cffi-bindings \
terminado Send2Trash prometheus-client nbconvert ipython-genutils \
ipykernel argon2-cffi notebook

这样卸载后,再运行命令jupyter notebook时ubantu甚至不知道jupyter是谁,可以说很干净了,来源文章放在下面了。

3、生成config文件(存储配置信息)
运行下方命令行,会生成jupyter_notebook_config.py文件,并附带该文件的路径!所以不熟悉ubantu的同学这个的地方要留意一下,等会直接 vi 路径
jupyter notebook --generate-config

4、生成密码
输入ipython,进入终端ipython,生成密码
ipython

from notebook.auth import passwd

passwd()

再Enter password:后面写自己想要写的密码;Out[2]后面是生成的密码,需要记录一下(不过我不知道这个密码有什么用,也是看教程记录的);最后推出就输入exit()

Linux系统远程连接jupyter notebook_第1张图片

5、编辑配置文件
要配置的文件就是config文件,刚刚在'3、'处强调了,要留意文件的路径,直接vi 路径就可以了

(如果有不熟悉ubantu的同学,找不回刚刚的路径了,就先输入cd退回到根目录,然后输入ll(小写L)找文件.jupyter,一般.jupyter文件夹里就有我们要的文件)
进入后可以通过键盘中的’Ins‘ insert键来输入我们要添加的内容,通过’Del' Delet键来删除内容。
 

将下面的内容添加进config文件:

c.NotebookApp.ip = '*' # 允许访问此服务器的 IP,星号表示任意 IP
c.NotebookApp.password = u''4、'的生成的密码'
c.NotebookApp.open_browser = False
c.NotebookApp.allow_remote_access = True
c.NotebookApp.enable_mathjax = True # 是否用mathjax,它是一种用于数学公式显示的工具

 因为代码下面全是注释,我就把它们添加到了上面(这个地方和我参考的文章不一样,我没有设置端口,因为它还挺让我混乱的)Linux系统远程连接jupyter notebook_第2张图片

 6、启动jupyter notebook
我用的是最简单的命令,其他的方法多多少少带点后缀啥的,我也实验过了,就是说对我而言不太适合
jupyter notebook
远端的服务器jupyter启动了,注意反馈的信息中有它的端口信息。(因为前面配置config的时候,我没有设置它的端口信息,所以这里是8889。不过一般情况下默认应该是8888,我之所以是8889是因为前面瞎捣鼓,不知道为啥8888就一直被占用了,有知道情况的老师欢迎告诉我!)
Linux系统远程连接jupyter notebook_第3张图片

7、客服端本地映射
这一步实在是重中之重,我卡死了好久好久

服务器上一般有防火墙,所以要通过ssh建立本地与服务器的映射。

ssh username@address_of_remote -L127.0.0.1:1234:127.0.0.1:8889

打开cmd,输入参照上面格式的内容

  • 【a】username:登录远程服务器的用户名
  • 【b】address_of_remote:远程服务器的IP地址
  • -L后面直接照着写127.0.0.1,我看其他文章之后的理解是,127.0.0.1等价与localhost(看了其他文章的朋友应该知道这个东西),但是我用localhost没有作用,用127.0.0.1才可以,这个地方如果你不行的话,可能也要多多尝试了。
  • 【c】这个1234就是我映射的端口,这个可以随便写,不一定是1234
  • 【d】这个地方就是上面'6、'中的端口,我的理解是远程服务器使用的端口?(不太懂)

Linux系统远程连接jupyter notebook_第4张图片

反正照着上面的格式,根据自己的情况把这部分填写清楚

然后就冒出了要求填写密码的请求,填写登录远程服务器的密码,注意,是服务器的密码,不是刚刚设置的jupyter!最后会弹出下图的模样。

Linux系统远程连接jupyter notebook_第5张图片

如果你出现下面的错误

 先cmd输入ssh,看看是不是ssh的问题,如果是下面这样就没问题,如果不是的话,那要去搜一下ssh了。如果你ssh没问题,还是出现了上图的错误,那就要检查一下是不是没有好好参照我上面说的格式了。

还有一种可能,就是的问题,或者挂了梯子。建议这个时候把它关了,或者关机重启,不要连外网再试一下。
Linux系统远程连接jupyter notebook_第6张图片

8、在电脑浏览去输入localhost:【c】
像我输入的就是localhost:1234

Linux系统远程连接jupyter notebook_第7张图片

 这个时候会冒出一个界面叫我们输密码,就按'4、'设置的密码输入,如果可以,那皆大欢喜,如果像我一样不可以,那就要重新设置密码。
(PS:按住Ctrl+C,终止jupyter)
输入:

jupyter notebook password

Linux系统远程连接jupyter notebook_第8张图片
然后重新输入密码就可以了

btw:
1、cmd不能关,关了就登录不上去了

 refer:
Linux系统搭建jupyter notebook:

http://t.csdn.cn/UEABO
给Linux上的jupyter修改密码: http://t.csdn.cn/NF7RH
http://t.csdn.cn/zyzT5ubuntu下彻底卸载 jupyter notebook:http://t.csdn.cn/zyzT5

你可能感兴趣的:(linux,jupyter,python)