通常我们会jupyter notebook在浏览器中弹出一个页面来使用笔记本.但是,打开服务器的终端仍然存在.有没有办法我们可以关闭该终端,服务器在后面运行?
pgr*_*cht 19
您可以使用将进程置于后台jupyter notebook &.您可以在之后关闭终端,然后该过程仍将继续运行.
Yog*_*esh 16
我正在使用操作系统:Ubuntu 16.0在谷歌云平台的VM实例上运行我的Jupyter笔记本.哪里
jupyter-notebook --no-browser --port=5000.它将在该VM实例上的端口号5000上启动Jupyter Notebook到目前为止,一切都很好.但是等待与我的SSH终端的连接终止然后Jupyter笔记本立即停止,因此我必须在重新启动ssh终端后再次重新运行它或从新的ssh终端重新运行它.
要避免这tmux是非常好的选择.
tmux)保持SSH会话在ssh终端关闭后在后台运行:tmux.它会在同一个终端打开一个窗口.现在,如果SSH终端关闭/终止,它将继续在实例上运行您的笔记本.
如果连接终止,则:
tmux attachcommand.想要终止tmux会话:
exittmux-terminal-window.(更新:如果我们关闭笔记本并使用tmux detach命令:它将退出tmux会话窗口/终端而不终止/停止tmux会话)有关详细信息,请参阅以下文章:https://www.tecmint.com/keep-remote-ssh-sessions-running-after-disconnection/
小智 15
在 *nix 下,运行程序避免因关闭终端而终止的最佳方法是使用nohup(不挂断)。
要在运行服务器后启动浏览器,请使用以下命令:
nohup jupyter notebook &
Run Code Online (Sandbox Code Playgroud)
要在不打开浏览器的情况下启动服务器,请使用以下命令:
nohup jupyter notebook --no-browser &
Run Code Online (Sandbox Code Playgroud)
请注意,您可以jupyter使用 页面右上角的退出来关闭服务器jupyter。
nohupput 作为进程 init(0) 的父进程,因此当终端关闭时它不会收到“挂断”信号。所有输出(标准输出和标准错误)都被重定向到nohup.out
nohup作为程序和 shell 命令存在的文件,所以如果你有bash,请检查man页面bash以阅读更多详细信息。
小智 7
您可以使用screen它来运行它。
screen -A -m -d -S anyscreenname jupyter notebook --no-browser
Run Code Online (Sandbox Code Playgroud)
这将在屏幕中启动 jupyter,您可以使用屏幕命令访问屏幕。
小智 6
实际上,jupyter notebook &仅靠它是不够的,后端仍然会登录到您的屏幕。
您需要的是,从本期引用的
jupyter notebook > /path/to/somefileforlogging 2>&1 &
Run Code Online (Sandbox Code Playgroud)
在后台运行jupyter笔记本服务器时,这对我有用。
$> nohup jupyter notebook --allow-root > error.log &
停止nohup jupyter笔记本很简单。
首先,找到jupyter的pid:
$> ps -ef| grep juypter
例如输出:
root 11417 2897 2 16:00 pts/0 00:04:29 /path/to/jupyter-notebook
然后终止进程:
$> kill -9 11417
您还可以通过将pid与以下内容一起存储来简化此操作:
$> nohup jupyter notebook --allow-root > error.log & echo $!> pid.txt
即,您可以通过以下方式停止笔记本:
$> kill -9 $(cat pid.txt)
停止jupyter笔记本的另一种方法是从笔记本页面退出。
| 归档时间: |
|
| 查看次数: |
26163 次 |
| 最近记录: |