未登录主机时 Sage notebook 服务器错误

Sage notebook server error when not logged in to host

我有一个 Sage 笔记本服务器,它在 Ubuntu 服务器 14.04(32 位)上的 screen 会话中运行。当我通过 ssh 连接到机器时,我可以像预期的那样在我的浏览器中使用我的笔记本。如果我没有通过 ssh 连接到机器(但笔记本服务器在 screen 会话中仍然 运行),我仍然可以登录并打开我的笔记本,但是当我按下 SHIFT +ENTER 在计算单元中,我得到:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "_sage_input_3.py", line 8, in <module>
    _interact_.SAGE_CELL_ID=1
NameError: name '_interact_' is not defined

如果我然后通过 ssh 重新进入机器,我关闭并重新打开笔记本(不需要从服务器注销),我可以再次正常使用计算单元。我什至不必附加到 screen 会话,只需登录到主机即可。

我认为最有可能的罪魁祸首与我的主目录的 eCryptfs 有关,所以我创建了 /var/sage/sage_notebook.sagenb,但我仍然得到错误*。目前,权限为 750,但我也尝试了 777,但没有成功。

这个问题显然是我没有登录时丢失的东西,但我不知道是什么。服务器是一个非常普通的 ext4 安装。有谁知道我错过了什么?

*实际上,当笔记本目录在我的主目录中并且我没有登录时,我收到了权限被拒绝的错误。显示的错误是我现在看到的,因为我已经移动到 /var/sage/...

我从兄弟 post 那里得到了答案,我在 Unix SE.

我已将笔记本目录移出我的主目录,但 Sage 仍在访问其在 ~/.sage 中的配置。 export HOME=/var/sage 工作;我可能会为 运行 服务器创建一个单独的用户。