前提:notebook配置文件
检查是否存在配置文件jupyter_notebook_config.py
,这个文件的默认位置时在你的主目录下Jupyter文件夹中:
- Windows:
C:\Users\USERNAME\.jupyter\jupyter_notebook_config.py
- OS X:
/Users/USERNAME/.jupyter/jupyter_notebook_config.py
- Linux:
/home/USERNAME/.jupyter/jupyter_notebook_config.py
如果Jupyter文件夹不存在,或者文件夹存在然而目录内没有配置文件,运行以下命令:
$ jupyter notebook --generate-config
这个命令会创建Jupyter文件夹(如有必要)和配置文件jupyter_notebook_config.py
。
自动化密码设置
对于 notebook 5.3,使用 token 第一次登录后,notebook 服务器会在用户界面上给你配置密码的机会。
会显示窗口请你输入当前 token,以及新密码,输入后单击Login and setup new password
。
下次登录时你会被提示输入密码,而不要求输入 token。
首次登录配置密码可以通过设置--NotebookApp.allow_password_change=False
禁用。
从 notebook 5.0 开始,可以通过命令来为 notebook 服务器输入和保存密码。jupyter notebook password
会提示你输入密码,并将哈希值保存在jupyter_notebook_config.json
中。
$ jupyter notebook password
Enter password: ****
Verify password: ****
[NotebookPasswordApp] Wrote hashed password to /Users/you/.jupyter/jupyter_notebook_config.json
准备哈希密码
你也可以手工准备哈希密码,使用函数notebook.auth.security.passwd()
:
In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'
注意:调用没有参数的
passwd()
时,系统会提示你输入、重新输入密码,像上述代码片段一样。这个函数可以接受字符串作为参数,如passwd('mypassword')
,但请务必不要在IPython中这样做,因为它将会保存在你的输入历史中。
将哈希密码添加到配置文件
上一步产生的哈希码可以添加到jupyter_notebook_config.py
中,例如:
c.NotebookApp.password = u'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'
自动化密码配置产生的哈希码存放于jupyter_notebook_config.json
,手工产生的哈希码存放于jupyter_notebook_config.py
。.json
配置文件优先于.py
配置文件,因此如果Json文件中已经配置了密码,手工配置的密码会无效。
以上内容节选自jupyter notebook 文档。