參考鏈接:(3條消息) Linux服務(wù)器上遠程配置jupyter notebook及修改notebook的密碼_dulingtingzi的博客-CSDN博客
文章包含3部分內(nèi)容“
1、如何在linux遠程服務(wù)器上配置jupyter notebook在本地顯示
2、如何修改jupyter notebook的密碼
3、將jupyter notebook掛后臺(如何查看host)
進入正題
1、如何在linux遠程服務(wù)器上配置jupyter notebook在本地顯示:
在已經(jīng)安裝了anaconda的情況下,可以直接用pip install jupyter安裝jupyter notebook
$ pip install jupyter
2、生成配置文件:
$ jupyter notebook --generate-config
3、生成密碼(后續(xù)配置文件,登錄時候需要)
$ python #進入python終端
>>> from IPython.lib import passwd
>>> passwd()
Enter password:
Verify password:
'sha1:1caed79badce:7e6d8261d400aec9a1cb60c8b6f5d14cb0d62d16' #記錄下這個密碼來,后面修改配置文件要用(如果出現(xiàn)此種情況Out[2]: 'argon2:$argon2id$v=19$m=10240,t=10,p=8$HtNcvOcGA697BNhe82s1fw$54JyGBgk4kDuLIo5LX3j0Q'? 可以照直接在用戶視圖下鍵入命令jupyter notebook password,直接修改密碼,然后run jupyter 進入登錄界面直接 輸入修改后的密碼即可登錄)
>>>exit()
4、修改默認配置文件
$vim ~/.jupyter/jupyter_notebook_config.py
修改配置如下,注意修改完要把注釋去掉才能生效啊
c.NotebookApp.ip='your host ip'#10.10.10.10? #可以用hostname -i 或者hostname -I查看,或者host -i,host -I
c.NotebookApp.password = u'sha:ce...剛才復(fù)制的那個密文'
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888 #隨便指定一個端口,8899等等
c.IPKernelApp.pylab = 'inline'? #這個可能沒有,找不到就不用管了
c.NotebookApp.notebook_dir = '/home/'? ?#設(shè)置jupyter啟動后默認的文件夾
5、啟動JupyterNotebook
$ jupyter notebook
6、遠程訪問
在本地瀏覽器拷貝http://yourhostip:8888就可以看到登錄界面
輸入密碼可以愉快的使用啦,ip配置的一般都是內(nèi)網(wǎng),離開內(nèi)網(wǎng)環(huán)境自然也就不能訪問了
2、如何修改jupyter notebook的密碼
1. initiaise the config file. (Only applied if the first time to run jupyter)
jupyter notebook --generate-config
2. on remote server
jupyter notebook password
這時生成的密碼會在/.jupyter/jupyter_notebook_config.json里面,這樣密碼就重設(shè)成功了
3、將jupyter notebook掛后臺(如何查看host)
上面的啟動方式,會在當前目錄生成一個日志文件,我忘了叫上面名字,總之隨著jupyter notebook的運行,日志文件會越來越大,如果不是很重要,可以設(shè)置不記錄日志,方法是將所有的輸出都重定向到/dev/null 2>&1 &?
此外,上面的啟動方式是啟動一個前臺進程,如果ssh連接斷開,jupyter notebook也就失效了,所以需要將jupyter notebook作為一個后臺進程啟動,在linux中是nohup命令。
1、# 不啟動ssl,不記錄日志輸出,作為后臺進程啟動jupyter notebook
nohup jupyter notebook >/dev/null 2>&1 &
jupyter notebook作為后臺進程啟動后,如果想要停止它,可以先找到進程ID,然后kill。
# 查看進程
ps -ef | grep 'jupyter notebook'
# 輸出如下,這里的21983即為進程id,
# hadoop ? ?22136 ?21983 ?0 09:10 pts/1 ? ?00:00:00 grep jupyter notebook
# 殺死進程
kill -9 21983
# 此時瀏覽器無法再連接jupyter notebook了吧。
2、另外,一種比較簡潔的小腳本,掛在后臺,一直啟動著jupyetr的方法:
jupyter_act.sh
host=? #用hostname -i 或者?hostname -I來查看
nohup jupyter notebook --ip $host? --no-browser --port 18888 1>nb.log 2>&1 & #設(shè)置host,及端口號等,將日志記錄在nb.log里面
想要關(guān)掉掛在后臺的jupyter notebook可以用: ps aux | grep jupyter 找到進程號,然后 kill -9 進程號即可
每次連接到遠程服務(wù)器就不用再啟動jupyter notebook了,直接用jupyter notebook list來查找你掛著的jupyter即可,很方便