为什么 Jupyter 笔记本服务器拒绝连接?

为什么 Jupyter 笔记本服务器拒绝连接?

操作系统是 Ubuntu 服务器 20.04 LTS(HVM)

我正在尝试配置服务器以在启动时启动 Jupyter 笔记本服务。问题是它拒绝连接。我不知道为什么。

笔记本和虚拟环境下面属于另一个用户(非root)。

  1. 在其他用户工作时手动启动笔记本服务

    如果我 ssh 进入服务器,su 到其他用户,输入该用户的密码,cd 到他们的主目录并启动笔记本服务,那么它就可以正常工作。也就是说,它不会拒绝连接。

  2. 以 root 身份手动启动笔记本服务不起作用。在这种情况下,启动脚本以 root 身份运行,并且连接被拒绝。在这种情况下,笔记本服务似乎正常启动,但拒绝来自外界的连接。

  3. 自动启动笔记本服务不起作用

我用来启动它的脚本是

       cd /home/anna_user2
       source .venv/jupyter/bin/activate
       jupyter notebook

我可以su在启动脚本中向其他用户发出请求,但就我有限的理解而言,存在两个问题:

  1. suNOPASSWD即使通过设置,也要求输入密码visudo
  2. 我在论坛上看到的帖子总是问“为什么要su在脚本中这样做?”这让我相信我不应该这样做,而且有更好的方法。

我使用命令启动虚拟环境source ~/.venv/jupyter/bin/activate。无法启动sudo source...(未找到命令)

该服务器是 Amazon AWS 实例,此服务提供指定在启动时运行的脚本(“用户数据”)的功能。

我在这里问这个问题的原因是这似乎是用户权限问题。我希望了解为什么如果服务由 root 启动则无法运行以及/或在脚本中使用 su 时出现的问题。

相关内容