Jupyter Notebook:访问文件被拒绝
Jupyter Notebook: Access to the file was denied
我正在尝试 运行 Ubuntu 21.10 上的 Jupyter notebook。我已经安装了 python、jupyter notebook 和所有各种先决条件。我将 export PATH=$PATH:~/.local/bin
添加到我的 bashrc
以便命令 jupyter notebook
可以从终端运行。
当我从终端调用 jupyter notebook
时,我的浏览器收到以下错误消息:
Access to the file was denied.
The file at /home/username/.local/share/jupyter/runtime/nbserver-260094-open.html is not readable.
It may have been removed, moved, or file permissions may be preventing access.
我使用的是最新版本的 FireFox。
我已经阅读了很多关于此的指南,这似乎是一个权限错误,但我使用的 none 指南已经解决了这个问题。使用 sudo
没有帮助,实际上它会导致抛出 Exception: Jupyter command "jupyter-notebook" not found.
。
尽管如此,我仍然可以访问笔记本服务器。如果我转到终端,而不是单击笔记本服务器的 localhost:8888
或 IP 地址,那么它将带我到笔记本和所有 运行s 没有问题。
我想解决这个问题,这样当我 运行 jupyter notebook
我被带到服务器并且不需要回到终端 window 然后点击IP地址。如果我同时 运行 多个笔记本,这很不方便并且会减慢我的速度。
非常感谢对此问题的任何帮助!
我遇到了同样的问题。
Ubuntu 20.04.3 LTS
铬版本 96.0.4664.110
这是我的解决方案:
使用此命令创建配置文件:
jupyter notebook --generate-config
编辑配置文件~/.jupyter/jupyter_notebook_config.py
并设置:
c.NotebookApp.use_redirect_file = False
确保此配置参数从行首开始。如果您在行首留下一个 space,您将收到一条消息,指出访问该文件被拒绝。
否则您可以清理并重新安装 JupyterLab
jupyter lab clean --all
pip3 install jupyterlab --force-reinstall
试试这个
sudo nano ~/.bashrc
在文件开头添加:
export XDG_RUNTIME_DIR=""
按 Ctrl-o 写入文件,按 Ctrl+x 退出。
现在输入:
source ~/.bashrc
如果有人好奇,问题的原因是 file://
URI 方案无法访问隐藏目录中的文件(在您的情况下为 .local
)。
您可以通过以下方式重现问题:
mkdir .test && echo "abc" > .test/file.html && xdg-open .test/file.html
我在 RFC8089 中找不到任何关于此行为的参考,我也不明白 Jupyter 作者是如何忽略这个问题的。
根据LSeu的建议,绕过本地重定向文件的方法是运行:
echo "c.NotebookApp.use_redirect_file = False" >> ~/.jupyter/jupyter_notebook_config.py
另一种解决方案是 运行 jupyter notebook --no-browser
和 (Ctrl)-单击终端中的 link。
我正在尝试 运行 Ubuntu 21.10 上的 Jupyter notebook。我已经安装了 python、jupyter notebook 和所有各种先决条件。我将 export PATH=$PATH:~/.local/bin
添加到我的 bashrc
以便命令 jupyter notebook
可以从终端运行。
当我从终端调用 jupyter notebook
时,我的浏览器收到以下错误消息:
Access to the file was denied.
The file at /home/username/.local/share/jupyter/runtime/nbserver-260094-open.html is not readable.
It may have been removed, moved, or file permissions may be preventing access.
我使用的是最新版本的 FireFox。
我已经阅读了很多关于此的指南,这似乎是一个权限错误,但我使用的 none 指南已经解决了这个问题。使用 sudo
没有帮助,实际上它会导致抛出 Exception: Jupyter command "jupyter-notebook" not found.
。
尽管如此,我仍然可以访问笔记本服务器。如果我转到终端,而不是单击笔记本服务器的 localhost:8888
或 IP 地址,那么它将带我到笔记本和所有 运行s 没有问题。
我想解决这个问题,这样当我 运行 jupyter notebook
我被带到服务器并且不需要回到终端 window 然后点击IP地址。如果我同时 运行 多个笔记本,这很不方便并且会减慢我的速度。
非常感谢对此问题的任何帮助!
我遇到了同样的问题。
Ubuntu 20.04.3 LTS 铬版本 96.0.4664.110
这是我的解决方案:
使用此命令创建配置文件:
jupyter notebook --generate-config
编辑配置文件~/.jupyter/jupyter_notebook_config.py
并设置:
c.NotebookApp.use_redirect_file = False
确保此配置参数从行首开始。如果您在行首留下一个 space,您将收到一条消息,指出访问该文件被拒绝。
否则您可以清理并重新安装 JupyterLab
jupyter lab clean --all
pip3 install jupyterlab --force-reinstall
试试这个
sudo nano ~/.bashrc
在文件开头添加:
export XDG_RUNTIME_DIR=""
按 Ctrl-o 写入文件,按 Ctrl+x 退出。
现在输入:
source ~/.bashrc
如果有人好奇,问题的原因是 file://
URI 方案无法访问隐藏目录中的文件(在您的情况下为 .local
)。
您可以通过以下方式重现问题:
mkdir .test && echo "abc" > .test/file.html && xdg-open .test/file.html
我在 RFC8089 中找不到任何关于此行为的参考,我也不明白 Jupyter 作者是如何忽略这个问题的。
根据LSeu的建议,绕过本地重定向文件的方法是运行:
echo "c.NotebookApp.use_redirect_file = False" >> ~/.jupyter/jupyter_notebook_config.py
另一种解决方案是 运行 jupyter notebook --no-browser
和 (Ctrl)-单击终端中的 link。