如何在Jupyter Lab中仅设置Notebook默认工作目录而不修改文件浏览器根目录
实现Jupyter Lab默认工作目录与文件浏览器根目录分离
当然可以做到!你想要的效果是:新建Notebook时默认保存到/usr/src/app,但文件浏览器依然能自由访问其他目录,而不是被限制在这个路径下。下面给你两种靠谱的实现方法:
方法一:修改Jupyter配置文件(永久生效)
- 首先生成配置文件(如果还没生成过),在终端运行:
jupyter lab --generate-config - 找到生成的配置文件:Linux/macOS下通常在
~/.jupyter/jupyter_lab_config.py,Windows下在C:\Users\<你的用户名>\.jupyter\jupyter_lab_config.py - 打开这个文件,找到以下两个配置项修改后保存:
- 找到
# c.ServerApp.notebook_dir = '',去掉前面的注释符#,把值改成'/usr/src/app'——这行负责设置新建Notebook的默认工作目录 - 确保
# c.ServerApp.root_dir = ''保持注释状态(如果之前被修改过,就改回空值并注释)——这会让文件浏览器的根目录保持系统默认,不会被限制
- 找到
- 重启Jupyter Lab,新建Notebook时就会默认存在
/usr/src/app,而文件浏览器依然能浏览其他位置的文件
方法二:启动时指定参数组合(临时生效)
如果不想修改配置文件,每次启动Jupyter Lab时可以用以下命令:
jupyter lab --notebook-dir=/usr/src/app --ServerApp.root_dir=''
--notebook-dir=/usr/src/app负责设置新建Notebook的默认保存路径--ServerApp.root_dir=''则强制文件浏览器使用系统根目录,避免被notebook-dir参数限制访问范围
小提醒
- 如果之前单独用过
--notebook-dir启动,建议清空浏览器缓存,避免Jupyter Lab保留旧的路径设置 - 一定要确保
/usr/src/app目录有读写权限,否则新建Notebook时会出现权限报错
内容的提问来源于stack exchange,提问作者Ian




