Jupyter笔记本:拒绝访问该文件



我正试图在Ubuntu 21.10上运行Jupyter笔记本。我已经安装了python,jupyter笔记本,以及所有的各种先决条件。我将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。

我已经阅读了很多关于这方面的指南,这似乎是一个权限错误,但我使用的指南都没有解决这个问题。使用sudo没有帮助,事实上它会导致抛出Exception: Jupyter command "jupyter-notebook" not found.

话虽如此,我仍然可以访问笔记本服务器。如果我去终端,而是点击笔记本服务器的localhost:8888或IP地址,那么它会把我带到笔记本上,一切都会顺利运行。

我想解决这个问题,这样当我运行jupyter notebook时,我就会被带到服务器,不需要回到终端窗口并单击IP地址。如果我同时运行多个笔记本电脑,这很不方便,而且会减慢我的速度。

如果能在这个问题上提供任何帮助,我们将不胜感激!

我也遇到了同样的问题。

Ubuntu 20.04.3 LTSChromium版本96.0.4664.110

这就是我的解决方案:

使用以下命令创建配置文件:

jupyter notebook --generate-config

编辑配置文件~/.jupyter/jupyter_notebook_config.py并设置:

c.NotebookApp.use_redirect_file = False

请确保此配置参数从行的开头开始。如果在该行的开头留出一个空格,则会收到拒绝访问该文件的消息。

否则您可以清洁并重新安装JupyterLab

jupyter lab clean --all
pip3 install jupyterlab --force-reinstall

如果有人好奇,问题的原因是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(单击终端中的链接。

对于那些运行安装了snap:的Firefox的用户

我认为这个问题更多地与安装了Snap的firefox有关,Snap在某种程度上禁止firefox访问其沙盒环境中/home/user文件夹中的隐藏目录。

本线程中未提及的另一个解决方案(如果您不想使用其他浏览器安装(是将JUPYTER_RUNTIME_DIRenv变量设置为/home/user文件夹中的非隐藏目录:

# Ubuntu 22.04.1 LTS
# append env variable to persistent user env file.  requires relogging in
echo JUPYTER_RUNTIME_DIR=/home/user/jupyter_runtime >> ~/.pam_environment
reboot

或者,尝试直接转到其他建议的URL:http://localhost:8888/lab?token=<your-access-token>http://127.0.0.1:8888/lab?token=<your-access-token>(这就是设置...use_redirect_file = False的作用(

相关内容

  • 没有找到相关文章

最新更新