Joa*_*ito 19 python server jupyter jupyter-notebook
我正在使用Jupyter Notebook进行项目.因为我在工作中使用ssh进入linux集群
ssh -Y -L 8000:localhost:8888 user@host
Run Code Online (Sandbox Code Playgroud)
然后我启动笔记本电脑,jupyter notebook --no-browser &以便继续使用终端.然后在我的本地机器上打开localhost:8000并继续我的工作.
我的问题是,我忘记了几次关闭服务器,通过前景化进程并将其杀死Ctrl-C.相反,我刚刚退出了ssh会话.现在,当我跑步时,jupyter notebook list我得到了
Currently running servers:
http://localhost:8934/ :: /export/home/jbalsells
http://localhost:8870/ :: /export/home/jbalsells
http://localhost:8892/ :: /export/home/jbalsells
http://localhost:8891/ :: /export/home/jbalsells
http://localhost:8890/ :: /export/home/jbalsells
http://localhost:8889/ :: /export/home/jbalsells
http://localhost:8888/ :: /export/home/jbalsells
Run Code Online (Sandbox Code Playgroud)
我显然不希望所有这些服务器都在我的工作机器上运行,但我不知道如何关闭它们!
当我运行ps时我什么也得不到:
PID TTY TIME CMD
12678 pts/13 00:00:00 bash
22584 pts/13 00:00:00 ps
Run Code Online (Sandbox Code Playgroud)
我安装了Jupyter 4.1.0.
Joa*_*ito 20
所以我找到了解决方案.
既然jupyter notebook list告诉你笔记本服务器正在运行哪些端口我使用http://www.cyberciti.biz/faq/what-process-has-open-linux-port/netstat -tulpn获取的信息来查找PID .
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
PID/Program name
tcp 0 0 0.0.0.0:8649 0.0.0.0:* LISTEN
-
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN
-
tcp 0 0 0.0.0.0:33483 0.0.0.0:* LISTEN
-
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN
39125/Xvnc
Run Code Online (Sandbox Code Playgroud)
看起来没那么难,我能够找到我知道要查找的端口jupyter notebook list以及运行它们的进程(grep如果找不到它们,你可以使用它们).然后我用它们kill 8337(或者与之相关的任何数字)杀死它们
.
小智 12
使用以下命令停止在端口 8888 上运行的 Jupyter notebook:
fuser -k 8888/tcp
Run Code Online (Sandbox Code Playgroud)
小智 10
这可能有帮助:
jupyter notebook list以获取 jupyter 使用的端口号。 lsof -n -i4TCP:[port-number]以获取PID。PID 是输出中的第二个字段。kill -9 [PID]以终止此进程。命令提示符下的Windows系统命令
在杀死jupyter笔记本服务器进程之前,请小心保存笔记本中所做的所有更改.
i)找到jupyter笔记本服务器使用的端口号
jupyter notebook list
Run Code Online (Sandbox Code Playgroud)
前).
jupyter notebook list
Currently running servers:
http://127.0.0.1:8888/ :: D:\kimkk\Documents\JupyterNotebook
Run Code Online (Sandbox Code Playgroud)
ii)找到使用找到的jupyter笔记本端口号的进程ID
netstat -ano | find "found portnumber"
Run Code Online (Sandbox Code Playgroud)
前).
netstat -ano | find "8888"
TCP 127.0.0.1:8888 0.0.0.0:0 LISTENING 24140
TCP 127.0.0.1:8888 127.0.0.1:55588 ESTABLISHED 24140
TCP 127.0.0.1:8888 127.0.0.1:55612 ESTABLISHED 24140
TCP 127.0.0.1:55588 127.0.0.1:8888 ESTABLISHED 6492
TCP 127.0.0.1:55612 127.0.0.1:8888 ESTABLISHED 6492
Run Code Online (Sandbox Code Playgroud)
iii)用找到的PID杀死jupyter笔记本进程
taskkill /PID found_PID /F
Run Code Online (Sandbox Code Playgroud)
前).
taskkill /PID 24140 /F
Run Code Online (Sandbox Code Playgroud)
仅供参考,版本5.1的Jupyter笔记本支持停止命令,如下所示:
jupyter notebook stop 8888
Run Code Online (Sandbox Code Playgroud)
请参阅https://github.com/jupyter/notebook/issues/1950
小智 5
我遇到了同样的问题,并遵循了上面发布的解决方案。只是想澄清一点解决方案。
netstat -tulpn
Run Code Online (Sandbox Code Playgroud)
将列出所有活动的连接。
tcp 0 0 0.0.0.0:8888 0.0.0.0:* LISTEN 19524/python
Run Code Online (Sandbox Code Playgroud)
在这种情况下,您将需要PID“ 19524”。您甚至可以使用以下命令获取您要关闭的端口的PID
fuser 8888/tcp
Run Code Online (Sandbox Code Playgroud)
这也会给您19524。
kill 19524
Run Code Online (Sandbox Code Playgroud)
将关闭端口
| 归档时间: |
|
| 查看次数: |
25662 次 |
| 最近记录: |