Jupyter/iPython Notebook 的 Root 访问权限

27

我希望在 iPython/Jupyter notebook 中使用 bash 内核,但我需要在笔记本本身中获得 sudo 访问权限。

我已经尝试过 $ sudo jupyter notebook 以 root 用户运行笔记本,但只有以下消息:

$ jupyter: 'notebook' is not a Jupyter command

所以,我只能运行 $ jupyter notebook(除非有一种以 root 身份运行 Jupyter notebook 的方法)。

我也不能在笔记本内部执行 su root,因为那需要一个输入,而笔记本不会让我输入。

最后,据说 Jupyter notebook 有一个 --allow-root 选项:http://jupyter-notebook.readthedocs.io/en/latest/config.html

然而,看起来 --allow_root 已不再是一个选项。(我尝试通过添加 NotebookApp.allow_root=True 来修改配置文件,但那并没有起作用。)

各位有什么想法?也许我做错了什么?


我这里也遇到了同样的问题。无法在Jupyter Notebook中使用snap.py。 - user1043144
还在等待解决方案吗? - Imad
8个回答

18

只需以root身份登录,然后执行以下命令启动笔记本电脑:

jupyter notebook --allow-root

12

解决方案如此处描述的,是使用

sudo -E env "PATH=$PATH" jupyter notebook

基本上,调用 jupyter notebook 的二进制文件在用户的 PATH 变量中,但对于 root 用户则未包含。

祝好。


2
这是解决这个问题的真正方案!! - Dwa

9

c.NotebookApp.allow_root=True添加到根配置文件中。这样,每次启动笔记本时,您就不需要请求allow-root

编辑:

在编辑配置文件之前,您需要以root身份运行jupyter notebook --generate-config来生成文件。


这个配置文件在哪里? - Imad
Aetos的配置文件是通过命令$sudo jupyter notebook --generate-config或者以root身份运行jupyter notebook --generate-config来生成本地文件。 - tiagohbalves

1

生成配置文件

root@user# jupyter notebook --generate-config

root/.jupyter/jupyter_notebook_config.py root@user# cd .jupyter/ root@user:/.jupyter/# gedit jupyter_notebook_config.py 在 jupyter_notebook_config.py 中添加以下行:

c.NotebookApp.allow_root=True


你能进一步解释一下你的解决方案吗? - Antoine Boisier-Michaud
在使用PyCharm和WSL的情况下,这个解决方案效果最好。 - George

1
我正在Jupyter Notebook中运行neopixel库。 唯一有效的方法是首先运行“sudo su”命令进入root环境,然后运行“jupyter notebook”(仅使用“--allow-root”对我无效)。

0
你应该尝试运行以下命令:sudo jupyter notebook --allow-root,我不确定为什么,但这个方法有效。在服务器上,它会要求你输入密码,如果你已经设置了密码,只需在显示的框中输入即可,否则,请输入jupyter notebook password来设置新密码。

0

当我需要在笔记本上以root身份执行命令时,我使用-A标志,它允许访问一个辅助程序,用于在没有终端可用时读取用户的密码。 在声明辅助程序之前,您需要修改sudo.conf文件。在Debian Buster上,我个人添加了:

Path askpass: /usr/libexec/seahorse/ssh-askpass

有关更多信息,请参阅sudo.conf的主页面。


0

如果还有人在寻找答案,这是对我有效的方法:

sudo ~/.local/bin/jupyter-notebook --allow-root

使用 su 切换用户失败,因为我没有在 root 上安装 jupyter。仅使用 --allow-root 也对我不起作用。这使您可以在不遇到“notebook”不是有效命令的问题的情况下使用 sudo 运行 jupyter notebook。因为我正在使用 Linux 终端,所以 jupyter-notebook 安装在 ~/.local/bin/jupyter-notebook。有关 jupyter 可能安装在何处的更多信息,请参见 使用 pip 安装后,“jupyter:找不到命令”


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接