私はプロジェクトでJupyter Notebookを使用しています。職場のLinuxクラスタにSSH接続しているので、
ssh -Y -L 8000:localhost:8888 user@host
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
当然、これらすべてのサーバーを職場のマシンで実行したくないのですが、それらを閉じる方法がわかりません。
ps を実行しても何も表示されません:
PID TTY TIME CMD
12678 pts/13 00:00:00 bash
22584 pts/13 00:00:00 ps
Jupyter 4.1.0 がインストールされています。
ベストアンサー1
そこで私は解決策を見つけました。
ノートブックサーバーがどのポートで動作しているかがわかるのでjupyter notebook list
、PIDを検索してnetstat -tulpn
情報を入手しました。http://www.cyberciti.biz/faq/what-process-has-open-linux-port/
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
あまり探さなくても、探すべきポートと、そのポートを実行しているプロセスを見つけることができました(見つけるのが難しすぎる場合は、jupyter notebook list
を使用できます)。次に、 (または関連付けられている番号) を使用して、それらを強制終了しました。grep
kill 8337