【问题标题】:Cannot open new Jupyter Notebook [Permission Denied]无法打开新的 Jupyter Notebook [权限被拒绝]
【发布时间】:2018-02-26 14:41:36
【问题描述】:

我已经使用 pip3 在 ubuntu 16.04 上安装了 Jupyter Notebook。我可以执行jupyter notebook 命令。它打开并显示当前路径目录的列表。

但我无法创建新笔记本(Python3)。它说

保存文件时出现意外错误:Deep Learning/NN/Untitled.ipynb [Errno 13] Permission denied: '/home/ubuntu/.local/share/jupyter/notebook_secret'

【问题讨论】:

    标签: ubuntu jupyter-notebook


    【解决方案1】:

    这是一个复杂的问题..但我终于找到了解决方案。

    你需要生成一个配置文件:

    jupyter notebook --generate-config

    它在 .jupyter 目录中创建。 如果隐藏,请按 CTRL+H 取消隐藏文件。 查找 c.NotebookApp.use_redirect_file 并使其如下:

    c.NotebookApp.use_redirect_file = False。

    确保删除行前的#。否则它将无法正常工作。 完毕! :)

    【讨论】:

      【解决方案2】:

      一个简单的方法是在“管理员”模式下运行你的终端

      【讨论】:

      • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
      【解决方案3】:
      1. 创建配置文件:jupyter notebook --generate-config
      2. 编辑配置文件:sudo gedit /home/<USERNAME>/.jupyter/jupyter_notebook_config.py(您可以使用vimnano 或其他任何东西来代替gedit
      3. 取消注释一行并更改默认值:

      之前:# c.NotebookApp.use_redirect_file = True

      之后:c.NotebookApp.use_redirect_file = False

      【讨论】:

        【解决方案4】:

        我关闭了笔记本页面并且:

        1. 我杀死了 notebook 内核,因为我使用的是 DockerSpawner,所以我需要删除 notebook 的容器
        2. 我通过运行rm -rf ~/.local/share/jupyter 删除了用户 jupyter 目录

        当我下次尝试创建新笔记本时,它开始工作了

        【讨论】:

          【解决方案5】:

          在我看来,在专用的工作簿文件夹中运行 Jupyter 是一种很好的做法。

          $ mkdir jupyter_folder
          $ jupyter-notebook --notebook-dir jupyter_folder
          

          “jupyter_folder”是我家中的一个文件夹。

          此方法在没有任何权限问题的情况下有效。

          【讨论】:

          • 在 chmod 和 chown 上尝试了所有方法后,最终以这种方式工作。
          • 根据这个提示,我更改了包含 ipynb 文件的文件夹的权限并且它起作用了。
          【解决方案6】:

          尝试在 /home/ubuntu 文件夹中创建笔记本

          【讨论】:

            【解决方案7】:

            我尝试从 Python 文件夹打开它,它有帮助。

            C:\Users\Julia>appdata\local\programs\python\python39\python.exe -m jupyter notebook

            【讨论】:

              【解决方案8】:

              我是从缺少写入权限的根目录“/”启动它,因此文件创建失败,如下所示

              Unexpected error while saving file: Untitled.ipynb [Errno 30] Read-only file system: '/Untitled.ipynb'
              

              一旦我从其他目录重新启动它,我就可以继续了。

              【讨论】:

                【解决方案9】:

                以上都不适合我,但以下对我有用:

                sudo chown -R user: /Library/Frameworks/Python.framework/Versions/3.9/share/jupyter/
                

                user 是您的用户名。

                【讨论】:

                  【解决方案10】:

                  在 Windows 中,我复制了我认为是快照的内容:

                  .~SomeAmazingNotebook.ipynb
                  

                  重命名:

                  SomeAmazingNotebook.ipynb
                  

                  并且可以打开它。

                  【讨论】:

                    【解决方案11】:

                    我在 Windows 10 上安装最新版本的 anaconda navigator 64 位时遇到了同样的问题。

                    我知道在 WINDOWS 10 上安装 32 位版本将解决这个问题。 它对我有用。 Jupyter 现在运行顺利。

                    【讨论】:

                      【解决方案12】:

                      尝试运行“~/anaconda3/bin/jupyter notebook”而不是“jupyter notebook”。 这为我解决了这个问题。不再出现“权限被拒绝”错误。

                      【讨论】:

                        【解决方案13】:

                        根据我在 Ubuntu 18.04 上的经验:

                        1.检查 Jupyter 安装

                        首先确保您已安装和/或升级 Jupyter-notebook(也适用于虚拟环境):

                        pip install --upgrade jupyter 
                        

                        2。更改访问权限(谨慎使用!)

                        然后尝试为您更改访问权限

                        sudo chmod -R 777 ~/.local
                        

                        其中 777 是访问权限的三位数表示。从某种意义上说,每个数字代表二进制的短格式(例如 7 代表 111)。 因此,777 意味着我们将所有用户(OwnerGroupOther)的读取、写入和执行权限设置为 1

                        Example.1

                        777 : 111 111 111

                        777 : rwx-rwx-rwx

                        示例.2

                        755 : 111 101 101

                        • 所有者:rwx=4+2+1=7
                        • 组:r-x=4+0+1=5
                        • 其他:r-x=4+0+1=5

                        (关于 chmod 的更多信息:File Permissions and attributes

                        3.运行 jupyter

                        然后运行你的 jupyter notebook:

                        jupyter-notebook
                        

                        注意:(这些步骤还解决了您在使用 ipythonjupyter 时有关权限的 Visual-Studio 代码(VS-Code)问题python-interactive-console。)

                        【讨论】:

                        • 我完全解释了 chmod 777 的作用。是否授予这些权限取决于您。 (有关更多安全选项,请参阅提供的参考资料)
                        • 我要指出的是,您正在更改 整个目录 的权限,该目录通常包含的不仅仅是您感兴趣的 jupyter 文件。这会创建各种的安全问题。使用chmod 777 通常只是不好的做法。您需要从根本上导致错误,而不是像这样将目录更改为允许的。
                        【解决方案14】:

                        在 Ubuntu 上,当浏览器安装为“快照”时,可能会出现“权限被拒绝”。我有这个问题。我编辑了配置文件以打开常规浏览器并且它工作正常。

                        How to change the default browser used by the ipython/jupyter notebook in Linux?

                        【讨论】:

                        • Chromium 在升级到 Ubuntu 20.04 时被“转换”为 snap。这正是“许可”问题的原因。我将默认浏览器设置为 /usr/bin/firefox,如链接答案中所述,并且......现在它工作正常!
                        【解决方案15】:
                        • 列表项
                        • 列表项

                        这个无法打开 jupyter notebook 的问题就像 Corona 病毒一样。我遇到了一些投诉——包括我自己的。我使用的是 windows 10。

                        在挣扎了 3 天之后,我终于找到了这个绝妙的万无一失的解决方案:-

                        1.jupyter 文件夹创建在路径:- C:\Users\deviv_000\AppData\Roaming\jupyter 你的名字将替换->deviv_000

                        2.转到 cmd 并写入: cd C:\Users\deviv_000\AppData\Roaming\jupyter 这会将 cmd 带到该文件夹​​。

                        3.现在在 jupyter 文件夹中手动创建一个 untitled.ipynb 文件。

                        4.回到cmd,写: jupyter trust untitled.ipynb

                        5.cmd 执行此操作后现在写入:-
                        jupyter笔记本

                        SUCCESS!!- your notebook will appear in the next tab.I used chrome.
                        

                        问候

                        【讨论】:

                        • 这涉及 Ubuntu,而不是 Windows,所以这个答案不相关。
                        【解决方案16】:

                        执行下面的脚本对我有用。

                        sudo chown $USER /home/$USER/.jupyter
                        

                        【讨论】:

                          【解决方案17】:

                          我遇到了同样的问题,结果我的 Windows 密码已经更改,因为我与 docker 共享了我的驱动器。

                          解决方法是将我的凭据放在 docker settings -> shared drives -> reset credentials 中,然后重新共享我的驱动器。

                          【讨论】:

                            【解决方案18】:

                            您不必安装或卸载任何东西。 如果您使用的是 python 2,请使用 pip 安装和升级。但是如果你想使用python3,那么请按照以下步骤操作:

                            sudo apt-get install python3-pip python3-dev
                            

                            然后在终端使用这个

                            pip3 install -U jupyter
                            

                            最后一步是启动 jupyter notebook 所以,在终端输入

                            jupyter notebook
                            

                            所有问题或权限等问题都将得到解决。

                            【讨论】:

                              【解决方案19】:

                              好像问题出在上一个版本中,所以

                              pip install notebook==5.6.0
                              

                              必须解决问题!

                              【讨论】:

                                【解决方案20】:

                                ~/.local/share/jupyter 目录的所有权root更改为user

                                sudo chown -R user:user ~/.local/share/jupyter 
                                

                                请看这里:https://github.com/ipython/ipython/issues/8997

                                冒号前的第一个user 是您的用户名,冒号后的第二个user 是您的组。如果您得到chown: [user]: illegal group name,请使用groups 查找您的组,或者使用sudo chown user: ~/.local/share/jupyter 指定没有组。

                                编辑:在 cmets 中为答案添加了 -R 选项。您必须将此目录内(或 ~/.jupyter/ 内的所有文件的所有权更改给您的用户,以使其正常工作。

                                【讨论】:

                                • sudo chown -R user:user ~/.local/share/jupyter
                                • 我们如何在 windows 中做到这一点?
                                • 我必须注销并登录 ubuntu 才能使其工作。
                                • 我的系统上没有这样的目录。我使用 snap 安装 jupyter。
                                • 在 CentOS7 上,我抱怨 /run/user/0/jupyter。已更改 /run/user/0/ 的所有者
                                【解决方案21】:

                                这里的最佳答案并没有完全解决问题,尽管它可能是必要的步骤:

                                sudo chown -R user:user ~/.local/share/jupyter 
                                

                                (用户应该是运行笔记本服务器的登录用户) 这会将文件夹所有者更改为运行服务器的用户,并授予其完全访问权限。

                                执行此操作后,错误消息说它没有权限在 ~/.ipynb_checkpoints/ 中创建检查点文件,因此我还更改了该文件夹的所有权(以前是 root)

                                sudo chown -R user:user ~/.ipynb_checkpoints/
                                

                                然后我就可以创建并保存一个笔记本了!

                                【讨论】:

                                • 对于那些错误信息为Permission denied: .ipynb_checkpoints的人,这就是解决方案。基本上将所有权更改为当前用户,他们将能够创建和保存检查点。
                                【解决方案22】:

                                在 Windows 机器上以管理员身份运行 python 命令提示符。这应该可以解决创建新 python 3 笔记本时的权限问题。

                                【讨论】:

                                  【解决方案23】:

                                  我必须使用 /* 为所有子文件夹递归运行 chown。比它起作用了:

                                  sudo chown -R user:usergroup /home/user/.local/share/jupyter/*
                                  

                                  【讨论】:

                                  • 您不需要/* - -R 开关就足够了。
                                  【解决方案24】:

                                  这对我有用:

                                  -> uninstalled Jupyter
                                  -> install jupyter in Python36 folder
                                  -> open Jupyter from command prompt instead of git bash.
                                  

                                  【讨论】:

                                    【解决方案25】:

                                    尝试了所有建议,但最终这对我有所帮助:

                                    sudo jupyter notebook --allow-root
                                    

                                    就我而言,它并没有自行启动浏览器。所以只需从终端复制链接并自己打开它。

                                    更新: 通过此命令更改文件夹(.local)权限:

                                    sudo chmod -R 777 .local
                                    

                                    【讨论】:

                                    • 如上-请不要使用chmod 777!这是一个真正的安全问题。
                                    • 不! .local 文件夹上的 chmod 777 是一个可怕的想法。你让每个人都修改和执行你的二进制文件!
                                    • (详细说明):您的.local 文件夹应始终具有700 权限,这基本上允许您一个人做所有事情
                                    【解决方案26】:
                                    1. 打开 Anaconda 提示符
                                    2. 转到C:\Users\your_name
                                    3. 写信jupyter trust untitled.ipynb
                                    4. 然后,写jupyter notebook

                                    【讨论】:

                                    • 给予相同的权限拒绝
                                    【解决方案27】:

                                    我在运行 Jupyter 时遇到了同样的问题。在追逐我的权限之后,我发现在我更改了我试图运行/存储我的笔记本的目录的所有权后,一切都清除了。例如:我在 ~/bash 目录中运行我的文件。那是根:根;当我将其更改为 jim:jim....不再出现错误。

                                    【讨论】:

                                      【解决方案28】:

                                      这可能是一个信任问题。
                                      命令行
                                      jupyter 信任 /path/to/notebook.ipynb
                                      这是文档链接:
                                      http://jupyter-notebook.readthedocs.io/en/latest/security.html#security-in-notebook-documents

                                      【讨论】:

                                        猜你喜欢
                                        • 1970-01-01
                                        • 1970-01-01
                                        • 1970-01-01
                                        • 1970-01-01
                                        • 2020-08-29
                                        • 2020-05-31
                                        • 2011-06-22
                                        • 2015-12-16
                                        • 2015-11-15
                                        相关资源
                                        最近更新 更多