web-dev-qa-db-ja.com

killallクロムブラウザ:プロセスが見つかりません

killall chromium-browserを実行してすべてのクロムブラウザセッションを停止することはできましたが、もうできませんでした。

$ killall chromium-browser
chromium-browser: no process found

私のクロムが新しいバージョンにアップグレードされてからしばらく経ちました。

$ apt-cache policy chromium-browser
chromium-browser:
  Installed: 58.0.3029.110-0ubuntu0.17.04.1354
  Candidate: 58.0.3029.110-0ubuntu0.17.04.1354

この方法でクロムブラウザセッションを強制終了するためのトリックはまだありますか?

詳細:

pkill chromiumを検索して見つけましたが、それは私が望むものではありません。killall chromium-browserを使用すると、すべてのクロムブラウザセッションが停止し、メモリが解放されるためです<-これが私が望むものです。すべてのウィンドウはまだそこにあります。コンテンツをもう一度表示したい場合は、更新する必要があります。

しかし、今日pkill chromiumを試してみると、すべてのクロムセッションが完全に停止しており、更新したり再開したりする方法がありません。唯一の解決策は、それらすべてを停止して殺すことです。しかし、クロムは私にこの方法で復元することを提案しません。つまり、私はすべてを失いました。

3
xpt

特定のツールを修正することではなく、目標を達成することに焦点を合わせます。 Chromiumのタブプロセスを強制終了しようとしているが、メインプロセスを強制終了しようとしていない場合は、コマンドラインを比較することから始めます。 ps -efwwまたはpgrep -alf chromiumを使用します。

すべての「子」プロセスには、--type=zygoteまたは--type=rendererのようなパラメーターがあることがわかります。これはプロセスの目的を直接説明しているため、実行可能ファイル名のわずかな違いに依存するよりも信頼性が高くなります(すべてのChromiumサブプロセスに同じ名前が付けられているため、実行可能ファイルの名前はnothingです。以前は動作していた「chromium-browser」は、Ubuntuのパッケージのアーティファクトにすぎませんでした)。

これはコマンドラインの一部であるため、pkill -fを使用して一致させる必要があります。

pkill -f -- "--type=renderer"

pkill -f -- "chromium --type=renderer"
2
user1686

Chrome/Chromiumの<SHIFT>-<ESC>タスクマネージャーを使用すると、ここで要求されたとおりに正確に実行できることがよくあります。これにより、End processボタンを使用して、どのタブが正常に動作していないかを簡単に確認し、それらを個別に強制終了できます。

それは素晴らしいことですが、Linuxコマンドラインから処理する必要がある場合もあります...


ブラウザプロセスを強制終了できることは、安定したLinuxシステムを維持するための基本的な要件のようです。残念ながら、このために機能する方法は絶えず進化しているようです。それは意志の戦いだと思います。

以前にこれに使用したkillallの何が問題になっているのかわかりません。

pkillは面白いです。タブ補完によって生成されますが、pkill chromium-browserは効果がありません(ただ静かにエラーステータスを返します)。 しかし、末尾のrは省略して、ビジネスを行っていますpkill chromium-browse。それがあなたが望むことを正確に行うかどうかはわかりませんが、少なくともそれは何かを行います。 コマンドを複数回実行すると違いが生じることもわかりました。

1つの手がかりは、ps -eが名前の短縮バージョンも表示することです。chromium-browse


...そして、別の回答へのコメントでOPが指摘しているように、このコマンドは、ウィンドウを強制終了せずにすべてのタブを強制終了するのに(現時点では)うまく機能しているようです。

pkill -f -- "chromium-browser --type=renderer"
2
nobar