IPython Notebookを適切に閉じる方法は?
現在、ブラウザのタブを閉じてから、ターミナルでCtrl+C
を使用しています。
残念ながら、exit()
もKill kernel upon exit
のチェックも役に立たない(彼らはカーネルを殺すが、iPythonは終了しない)。
現在のところ、ターミナルでCtrl + Cを使用するよりも良い方法はありません。
明示的にシャットダウンする方法を考えていますが、ノートブックには、ユーザーが自由に停止できるシングルユーザーアプリケーションと、管理者だけができるマルチユーザーサーバーとの間に緊張があります。それを止めるために。違いをどのように処理するかについては、まだ十分に解決していません。
(将来の読者にとって、これは0.12がリリースされ、0.13が開発中の状況です。)
2017年12月に更新
IPython NotebookはJupyter Notebookになりました。最近のバージョンでは、そのシステムで実行されているサーバーをシャットダウンするjupyter notebook stop
Shellコマンドが追加されました。デフォルトのポート8888ではない場合、コマンドラインでポート番号を渡すことができます。
nbmanager を使用することもできます。これは、実行中のサーバーを表示してシャットダウンできるデスクトップアプリケーションです。
最後に、次の追加に取り組んでいます:
私のようなバックグラウンドでjupyterを実行する場合:
jupyter notebook &> /dev/null &
次に、Ctl-Cの代わりにjupyterを完全に終了するには、エイリアスコマンドを作成します。
echo 'alias quitjupyter="kill $(pgrep jupyter)"' >> ~/.bashrc
ターミナルを再起動します。すべてのjupyterインスタンスを強制終了します。
quitjupyter
注:上記のように、単一引用符の内側に二重引用符を使用します。別の方法では、.bashrcに書き込む前に式を評価します( 'kill 1430'や現在のjupyterインスタンスに関連付けられているプロセス番号ではなく、コマンド自体を記述したい)。もちろん、任意のエイリアスを使用できます。私は実際に「qjup」を使用します:
echo 'alias qjup="kill $(pgrep jupyter)"' >> ~/.bashrc
ターミナルを再起動します。すべてのjupyterインスタンスを強制終了します。
qjup
最初のステップは、開いているすべてのノートブックを保存することです。そして、実行中のJupyter Notebookをシャットダウンすることを検討してください。次の簡単なコマンドを使用できます。
$ jupyter notebook stop
Shutting down server on port 8888 ...
また、引数としてポート番号を使用し、jupyterノートブックを正常にシャットダウンできます。
例えば:
jupyter notebook stop 8889
Shutting down server on port 8889 ...
さらに、現在実行中のjuypterインスタンスを知るには、以下のコマンドを確認してください。
Shell> juypter notebook list
Currently running servers:
http://localhost:8888/?token=ef12021898c435f865ec706d7c9af8607a7ba58bbee98632 :: /Users/username/jupyter-notebooks [/code]
他に機能しない場合は、タスクマネージャーからpythonwプロセスを強制終了してください(Windowsの場合)。
Linux (Ubuntu 14.04)
前述のように、最初にipynb/jupyterブラウザーセッションの「実行中」タブに移動して、ipythonノートブックプロセスを適切に終了してから、コンソールで開いているターミナルを確認し、ctrl-cでシャットダウンします。可能であれば、後者は避ける必要があります。
ipython notebook list
を実行し、引き続き異なるポートでipythonサーバーの実行を確認する場合は、既存のノートブックが提供されているポートをメモしてください。次に、TCPポートをシャットダウンします。
fuser -k 'port#'/tcp
これを行うことに他のリスクがあるかどうかはわかりません。もしそうなら、私に知らせてください。
これらのコマンドは私のために働いた:
jupyter notebook list # shows the running notebooks and their port-numbers
# (for instance: 8080)
lsof -n -i4TCP:[port-number] # shows PID.
kill -9 [PID] # kill the process.
この回答は、 here から採用されました。
実際、killまたはtask managerを使用してプロセスを強制終了するよりもクリーンな方法があると思います。
Jupyter Notebookダッシュボード(「jupyter Notebook」を最初に起動したときに表示されるブラウザーインターフェイス)で、ブラウザーで閉じたがカーネルがまだ実行されている可能性があるノートブックファイルの場所を参照します。
iPython Notebookファイルには、ブックアイコンが表示されます。カーネルが実行されている場合は緑色で、カーネルが実行されていない場合は灰色で表示されます。
実行中のファイルの横にあるチェックボックスを選択し、その上に表示される[シャットダウン]ボタンをクリックするだけです。
これにより、その特定のノートブックに関連付けられているカーネルが適切にシャットダウンされます。
環境
私のOSはUbuntu 16.04であり、jupyterは4.3.0です。
方法
まず、ブラウザのホームページでjupyterからログアウトしました(ログアウトボタンは右上にあります)
次に、ターミナルにCtrl + C
と入力すると、以下が表示されます。
[I 15:59:48.407 NotebookApp] interrupted Serving notebooks from local directory:/ home/Username 0 active kernels
Jupyterノートブックは次で実行されています: http:// localhost:8888 /?token = a572c743dfb73eee28538f9a181bf4d9ad412b19fbb96c82
このノートブックサーバーをシャットダウンしますか(y/[n])?
最後のステップで、5秒以内にy
と入力し、表示される場合:
[C 15:59:50.407 NotebookApp]シャットダウンの確認
[I 15:59:50.408 NotebookApp]カーネルのシャットダウン
おめでとうございます! jupyterを正常に閉じます。
ブラウザセッションでは、Kernel
に移動し、Restart and Clear Output
をクリックすることもできます。
手順1-シェルでcontrol + z(control + c)を実行します手順2 _ Webブラウザを閉じます
2018年2月13日にリリースされたJupyter/IPython Notebookクイックスタートガイドドキュメントからコピーペーストしています。 http://jupyter-notebook-beginner-guide.readthedocs.io/en/latest/execute.html
1.3.3ノートブックを閉じる:カーネルのシャットダウンノートブックを開くと、その「計算エンジン」(カーネルと呼ばれる)が自動的に開始されます。ノートブックのブラウザタブを閉じても、カーネルはシャットダウンされません。代わりに、明示的にシャットダウンされるまでカーネルは実行され続けます。カーネルをシャットダウンするには、関連するノートブックに移動し、[ファイル]-> [閉じる]および[停止]メニューをクリックします。別の方法として、ノートブックダッシュボードには、実行中のすべてのノートブック(つまりカーネル)を表示し、(シャットダウンボタンをクリックして)シャットダウンできるようにするRunningという名前のタブがあります。
要約:最初に実行中のノートブックを閉じて停止します。
1.3.2 Jupyter Notebookアプリをシャットダウンするブラウザー(またはタブ)を閉じてもJupyter Notebookアプリは閉じません。完全にシャットダウンするには、関連する端末を閉じる必要があります。より詳細には、Jupyter Notebookアプリは、ブラウザーのデフォルトアドレス( http:// localhost:8888 )に表示されるサーバーです。ブラウザを閉じてもサーバーはシャットダウンしません。以前のアドレスを再度開くと、Jupyter Notebookアプリが再表示されます。 Jupyter Notebook Appの多くのコピーを実行でき、それらは同様のアドレスに表示されます(新しいコピーごとにポートである「:」の後の数字のみが増加します)。単一のJupyter Notebookアプリで既に多くのノートブックを開くことができるため、Jupyter Notebookアプリの複数のコピーを実行することはお勧めしません。
要約:次に、Jupyterを起動した端末を終了します。