无法打开新的Jupyter笔记本[权限被拒绝]

56 人关注

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

但我无法创建一个新的笔记本( Python3 ).它说

在保存文件时出现了意外的错误。深度学习/NN/Untitled.ipynb [Errno 13] 权限被拒绝:'/home/ubuntu/.local/share/jupyter/notebook_secret' 。

python
ubuntu
jupyter-notebook
CodeNinja101
CodeNinja101
发布于 2017-09-18
30 个回答
Ganesh Pandey
Ganesh Pandey
发布于 2018-11-02
已采纳
0 人赞同

改变 ownership of the ~/.local/share/jupyter directory from root to user .

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

see here: https://github.com/ipython/ipython/issues/8997

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

EDIT:在答案的注释中添加了-R选项。你必须把这个目录(或~/.jupyter/里面的所有文件的所有权改为你的用户,无论它在哪里给你PermissionError),以使它工作。

sudo chown -R user:user ~/.local/share/jupyter
How do we do this in windows?
我不得不在ubuntu上注销和登录,以使其发挥作用。
我的系统上没有这样的目录。我使用snap来安装jupyter。
在CentOS7上,我有这样的抱怨,关于一个 /run/user/0/jupyter 。改变了所有者为 /run/user/0/
Zompa
Zompa
发布于 2018-11-02
0 人赞同

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

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

其中'jupyter_folder'是我家里的一个文件夹。

这种方法没有任何权限问题。

在尝试了所有关于chmod和chown的方法后,最后这个方法成功了。
根据这一线索,我改变了包含ipynb文件的文件夹的权限,它就成功了。
lxx
这在ubuntu 22中完美地工作,所有的东西都是snaps。在你的~.zshr或.bashrc中设置一个别名,或者为每个主要项目设置一个别名。
Shweta Chandel
Shweta Chandel
发布于 2018-11-02
0 人赞同

我尝试了所有的建议,但最后这个帮助了我。

sudo jupyter notebook --allow-root

在我的例子中,它没有自己启动浏览器。因此,只要从终端复制链接并自己打开即可。

通过这个命令改变文件夹(.local)的权限。

sudo chmod -R 777 .local
    
如上--请不要使用 chmod 777 ! 这是一个真正的安全问题。
NOOO! chmod 777 on .local 文件夹是一个可怕的想法。你正在让每个人修改和执行你的二进制文件
(详细说明):你的 .local 文件夹应该始终拥有 700 的权限,这基本上允许你做任何事情,而且只有你一个人。
Krystian
Krystian
发布于 2018-11-02
0 人赞同

在Ubuntu上,当浏览器以 "快照 "形式安装时,可能会出现 "权限拒绝"。我遇到了这个问题。我编辑了配置文件,打开了一个普通的浏览器,它就成功了。

如何改变Linux下ipython/jupyter笔记本使用的默认浏览器?

在升级到Ubuntu 20.04时,Chromium被 "转换 "为sap。这正是 "权限 "问题的原因。我把默认浏览器设置为/usr/bin/firefox,正如链接的答案中所解释的那样,......现在它工作得很好!
这是一个问题,现在Ubuntu 22.04通过'snap'安装火狐。
Bryan Blackford
Bryan Blackford
发布于 2018-11-02
0 人赞同

这里的顶级答案并没有完全解决这个问题,尽管这可能是一个必要的步骤。

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

(用户应该是运行笔记本服务器的登录用户) 这就把文件夹的所有者改为运行服务器的用户,使其具有完全的权限。

这样做之后,错误信息说它没有权限在~/.ipynb_checkpoints/中创建检查点文件,所以我也改变了该文件夹的所有权(以前是root)。

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

然后我就能创建和保存一个笔记本了!这就是我的工作。

对于那些错误信息为 Permission denied: .ipynb_checkpoints 的用户,这就是解决方案。基本上把所有权改为当前用户,他将能够创建和保存检查点。
Shubham Agrawal
Shubham Agrawal
发布于 2018-11-02
0 人赞同
  • Open Anaconda prompt
  • Go to C:\Users\your_name
  • Write jupyter trust untitled.ipynb
  • Then, write jupyter notebook
  • 给予者同样的许可拒绝
    ShaneCalder
    ShaneCalder
    发布于 2018-11-02
    0 人赞同

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

    JimH23
    JimH23
    发布于 2018-11-02
    0 人赞同

    我在运行Jupyter时也遇到了同样的问题。 在追问权限之后,我发现在我改变了运行/存储笔记本的目录的所有权之后,一切都好了。 例如:我在~/bash目录下运行我的文件。 那是root:root;当我把它改为jim:jim....,就不再有错误了。

    Hrvoje
    Hrvoje
    发布于 2018-11-02
    0 人赞同

    我不得不对所有子文件夹以递归方式运行chown,其中包括/* .然后它就成功了。

    sudo chown -R user:usergroup /home/user/.local/share/jupyter/*
        
    You don't need /* - the -R switch should be sufficient.
    Zarrie
    Zarrie
    发布于 2018-11-02
    0 人赞同

    似乎问题出在最后一个版本,所以

    pip install notebook==5.6.0
    

    must solve the problem!

    emeralddove
    emeralddove
    发布于 2018-11-02
    0 人赞同

    尝试运行"~/anaconda3/bin/jupyter notebook "而不是 "jupyter notebook"。 这为我解决了问题。不再有 "权限拒绝 "的错误。

    Idan Hazan
    Idan Hazan
    发布于 2018-11-02
    0 人赞同
  • Create a configuration file: jupyter notebook --generate-config .
  • Edit a configuration file: sudo gedit /home/<USERNAME>/.jupyter/jupyter_notebook_config.py (You can use vim , nano or anything else instead of gedit )
  • Uncomment a line and change the default value:
  • BEFORE: # c.NotebookApp.use_redirect_file = True

    AFTER: c.NotebookApp.use_redirect_file = False

    Nimita
    Nimita
    发布于 2018-11-02
    0 人赞同

    This worked for me:

    -> uninstalled Jupyter
    -> install jupyter in Python36 folder
    -> open Jupyter from command prompt instead of git bash.
        
    Abdullah Akhtar
    Abdullah Akhtar
    发布于 2018-11-02
    0 人赞同

    你不需要安装或卸载任何东西。 如果你使用的是Python 2,请使用pip来安装和升级。但如果你想使用Python3,那么请按照以下步骤进行。

    sudo apt-get install python3-pip python3-dev
    

    then in terminal use this

    pip3 install -U jupyter
    

    final step is to launch jupyter notebook so,in terminal just type

    jupyter notebook
    

    所有的问题或佣金等问题都将得到解决。

    Rich Hildebrand
    Rich Hildebrand
    发布于 2018-11-02
    0 人赞同

    我也有同样的问题,结果发现我的windows密码在我与docker共享硬盘后发生了变化。

    修复方法是在docker settings -> shared drives -> reset credentials 中恢复我的凭证,然后重新分享我的驱动器。

    MT_Shikomba
    MT_Shikomba
    发布于 2018-11-02
    0 人赞同

    Executing the script below worked for me.

    sudo chown $USER /home/$USER/.jupyter
        
    Shweta Tomar
    Shweta Tomar
    发布于 2018-11-02
    0 人赞同

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

    我了解到 在Windows 10上安装32位版本 will solve the issue. It worked for me. Jupyter is running smoothly now.

    cs0815
    cs0815
    发布于 2018-11-02
    0 人赞同

    在窗口中,我复制了,我认为是一个快照。

    .~SomeAmazingNotebook.ipynb
    
    SomeAmazingNotebook.ipynb
    

    并能打开它。

    0 人赞同

    上述方法对我来说都不起作用,但下面的方法起了作用。

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

    其中用户是你的用户名。

    Subra M
    Subra M
    发布于 2018-11-02
    0 人赞同

    我从根目录"/"启动它,但我没有写权限,因此文件创建失败,如下所示

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

    有一次,我从其他文件夹重新启动它,我能够继续进行。

    Julia
    Julia
    发布于 2018-11-02
    0 人赞同

    我试着从Python文件夹中打开,这有帮助。

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

    João Raffs
    João Raffs
    发布于 2018-11-02
    0 人赞同

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

    32cupo
    32cupo
    发布于 2018-11-02
    0 人赞同

    我合上笔记本页面,然后。

  • I killed notebook kernel, since I was using DockerSpawner I needed to delete notebook's container
  • I deleted user jupyter directory by running rm -rf ~/.local/share/jupyter
  • 当我下次试图创建新的笔记本时,它开始工作了

    0 人赞同

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

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

    jupyter notebook --generate-config

    它在.jupyter目录下创建。 如果它是隐藏的,做一个CTRL+H来解除文件的隐藏。 寻找c.NotebookApp.use_redirect_file并使其像这样。

    c.NotebookApp.use_redirect_file = False。

    请确保删除行前的#。否则它将无法工作。 完成了!:)

    ASHUTOSH
    ASHUTOSH
    发布于 2018-11-02
    0 人赞同

    我通过改变当前文件夹的所有者解决了这个问题。每当我们在终端上输入 jupyter notebook ,它总是在当前路径(我们通过终端指向的)中打开,所以我们只需将所有者改为当前用户,然后如果你点击 "新笔记本",它就会为你创建一个,而不会出现权限拒绝的错误。

    杨树浩
    杨树浩
    发布于 2018-11-02
    0 人赞同

    我的操作系统是Ubuntu 22.04 LTS。当我使用从官方网站下载的Chrome浏览器时。我解决了这个问题。也许这是因为Ubuntu上的Firefox和chromium是基于Snap的。

    karel
    karel
    发布于 2018-11-02
    0 人赞同

    我尝试了Ubuntu 22.04答案中接受的答案,但它对我不起作用,我发现这是因为Firefox在Ubuntu 22.04中被打包成了一个sap包。我通过用这个命令安装Web(GNOME的网络浏览器)来规避这个障碍。

    sudo apt install epiphany 
    

    Create jupyter_notebook_config.py by:

    jupyter notebook --generate-config # type y for yes at the prompt
    

    然后在文本编辑器中打开~/.jupyter/jupyter_notebook_config.py进行编辑,并更改。

    # c.NotebookApp.browser = ''
    
    c.NotebookApp.browser = '/usr/bin/epiphany'
    

    不要忘记删除#,这样它就不再是一个评论了。这最后2-3个步骤的灵感来自于https://stackoverflow.com/a/35578527/.如果你不喜欢Web,你可以使用一个不同的网络浏览器,只要它不是一个snap包,并且你把/usr/bin/epiphany的路径改为你的网络浏览器的路径,你可以通过运行which my-web-browser的命令来找到。

    不过还是不行,所以你必须再做一个步骤。这与本问题的公认答案相同。将~/.local/share/jupyter目录的所有权从root to user.而不是user在下面的命令中,用你自己登录的用户名替换它。

    sudo chown -R user:user ~/.local/share/jupyter 
        
    user1744515
    user1744515
    发布于 2018-11-02
    0 人赞同
  • List item
  • List item
  • 这个无法打开jupyter笔记本的问题就像Corona病毒一样。我遇到了几个投诉--包括我自己的。我使用windows 10。

    在挣扎了3天之后,我发现了这个奇妙的万无一失的解决方案:-

    1.The jupyter folder is created at path:- C:\Users\deviv_000\AppData\Roaming\jupyter your name will replace->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 notebook

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