ソフトウェア
 Computer >> コンピューター >  >> ソフトウェア >> ソフトウェア

ポート番号による Linux プロセスの終了:迅速かつ安全な方法

Linux マシンの特定のポートで実行されているプロセスを停止する必要がある状況に遭遇したことがありますか?

実行しているアプリケーションが不正に動作しているのではないか、ネットワーク リソースやローカル CPU パワーを使い果たしているのではないかと心配する人もいるかもしれません。このようなアプリケーションは、排除したいセキュリティ上の脅威となる可能性もあります。

理由が何であれ、ターミナルから fuser、lsof、netstat コマンドを (kill とともに) 使用すると、ポート番号を使用して Linux プロセスを見つけて強制終了できます。これらのコマンドは、Ubuntu を含むほとんどの Linux オペレーティング システムで動作します。

fuser コマンドを使用して Linux プロセスを強制終了する方法

ポート番号を使用してプロセスを強制終了する最も簡単な方法の 1 つは、fuser コマンドを使用することです。この Linux 端末コマンドは、ファイルまたはソケットにアクセスするプロセスを一覧表示または強制終了できます。アプリがネットワーク アクティビティを使用して実行されている場合 (つまり、オープン ポートを使用している場合)、アプリはおそらく次の 2 つのことのいずれかを実行していると考えられます。

続行する前に、Linux PC でコマンド ライン ターミナルの使用に慣れているかどうかを確認する必要があります。

ポート番号による Linux プロセスの終了:迅速かつ安全な方法

fuser を使用してポート番号を使用しているプロセスを一覧表示するには、次の構文を使用できます。

fuser -n プロトコル ポート

この例では、protocol は tcp または udp で、port は確認するポート番号です。たとえば、どのプロセスが TCP ポート 80 を使用しているかを確認するには、次のコマンドを実行します。

フューザー -n tcp 80

これにより、そのポートを使用しているプロセスのプロセス ID (PID) が出力されます。

これらのプロセスを強制終了するには、fuser に -k オプションを追加します。これにより、各プロセスに SIGTERM シグナルが送信され、正常に終了するように求められます。例:

フューザー -k -n tcp 80

これにより、TCP ポート 80 を使用しているすべてのプロセスが強制終了されます。

一部のプロセスが SIGTERM に応答しない場合は、-k の代わりに -KILL を使用できます。これにより、強制終了シグナル (SIGKILL) が送信され、特定した現在実行中のプロセスを即時に強制終了するのに役立ちます。ただし、データの損失や破損が発生する可能性があるため、慎重に使用してください。例:

フューザー -KILL -n tcp 80

これにより、TCP ポート 80 を使用しているすべてのプロセスが強制的に強制終了されます。問題が発生した場合は、これらのコマンドをスーパー ユーザー (sudo コマンドを使用) として実行するか、代わりに root ユーザーを使用して実行してください。

lsof コマンドを使用して Linux プロセスを強制終了する方法

Linux PC でポート番号を使用してプロセスを強制終了するもう 1 つの方法は、lsof コマンドを使用することです。このコマンドは、システム上で開いているファイルとソケットを一覧表示できます。

ポート番号による Linux プロセスの終了:迅速かつ安全な方法

特定のポート番号を使用しているプロセスを一覧表示するには、次の構文を使用できます。

lsof -i プロトコル:ポート

前と同様に、protocol は tcp または udp で、port は確認するポート番号です。たとえば、どのプロセスが TCP ポート 53 (通常は DNS リクエストに使用される) を使用しているかを確認するには、次のコマンドを実行します。

lsof -i tcp:53

これにより、そのポートを使用する各プロセスに関する情報 (PID など) が出力されます。

これらのプロセスを強制終了するには、lsof で -t オプションを使用します。これにより、プロセスの PID のみが出力され、他の情報は出力されません。その後、任意のシグナル オプションを使用して、この出力を kill コマンドにパイプすることができます。例:

kill $(lsof -t -i tcp:53)

これにより、TCP ポート 53 を使用してすべてのプロセスに SIGTERM シグナル (デフォルト) が送信されます。

一部のプロセスが以前のように SIGTERM シグナルに応答しない場合は、kill の後に何も指定しない代わりに -9 を使用できます。これにより、以前と同様に SIGKILL シグナルが送信され、即時に強制終了されますが、データの損失や破損が発生する可能性もあります。例:

kill -9 $(lsof -t -i tcp:53)

これにより、TCP ポート 53 を使用してすべてのプロセスに SIGKILL シグナル (デフォルト) が強制的に送信されます。

netstat コマンドを使用して Linux プロセスを強制終了する方法

netstat コマンドを使用して、アクティブで開いているネットワーク ポートを使用して Linux PC 上で実行中のプロセスを追跡することもできます。 netstat を使用すると、システム上のネットワーク接続と統計情報を表示して、問題のあるプロセスを正確に特定できます。

ポート番号とその PID を使用してプロセスを一覧表示するには、PID を表示する -p と、リッスンしているソケットのみを表示する -l の 2 つのオプションを追加する必要があります。

また、プロトコル (tcp、udp など) を指定し、オプションで状態 (LISTEN など) でフィルターすることも必要です。たとえば、どの TCP プロセスがポートでリッスンしているかを確認するには、次のコマンドを実行します。

netstat -p tcp -l

これにより、任意のポートでリッスンしている各 TCP ソケットに関する情報 (PID を含む) が出力されます。

ポート番号による Linux プロセスの終了:迅速かつ安全な方法

特定のポートでフィルタリングするには、別のオプション -n を追加する必要があります。これは、名前の代わりに数値アドレスを表示します。また、正確なアドレス形式 [protocol][@hostname|hostaddr][:service|port] を指定する必要もあります。

たとえば、どの TCP プロセスがポート 80 でリッスンしているかを確認するには、次のコマンドを実行します。

netstat -p tcp -l -n 80

これにより、ポート 8080 でリッスンしている各 TCP ソケットに関する情報 (PID を含む) が出力されます。

ポート番号による Linux プロセスの終了:迅速かつ安全な方法

これらのプロセスを強制終了するには、任意のシグナル オプションと netstat から取得した PID を指定して kill コマンドを使用します。例:

1234 5678 を殺してください

これにより、SIGTERM シグナル (デフォルト) が PID 1234 および 5678 のプロセスに送信されます。

一部のプロセスが以前のように SIGTERM シグナルに応答しない場合は、kill の後に何も指定しない代わりに -9 を使用できます。これにより、以前と同様に SIGKILL シグナルが送信され、即時に強制終了されますが、以前と同様にデータの損失または破損が発生する可能性があります。例:

キル -9 1234 5678

これにより、たとえば、PID 1234 および 5678 のプロセスに SIGKILL シグナルが強制的に送信されます。 1234 を、実行中のプロセスの正しい PID に置き換えます。

ポート番号による Linux プロセスの終了:迅速かつ安全な方法

Linux アプリケーションを制御

上記の手順のおかげで、Linux コマンド ラインを使用してポート番号を使用して、実行中の Linux プロセスをすぐに強制終了できます。プロセスを強制終了するときは、特に SIGKILL シグナルを使用する場合は注意してください。プロセスが望ましくない副作用を引き起こす可能性があるためです。結局のところ、システムが不安定になることは望ましくないのです。

Linux 上のシステム パフォーマンスを詳しく調べたいですか?次に、Linux でのメモリ使用量を確認してみるとよいでしょう。潜在的なセキュリティ リスクが心配な場合は、Linux のパスワードも変更した方がよいでしょう。

新しい Linux ディストリビューションに切り替える必要がありますか?初心者の場合は、安全で安定した代替手段として Linux Mint を検討してください。


  1. Sonos が新しいハードウェア トリオを発表 - Arc サウンドバー、Sonos Sub、Sonos Five スピーカー

    究極のワイヤレス ホーム サウンド システムである Sonos が、ついに Dolby Atmos シアター オーディオに対応します。本日の発表によると、同社は新しいハードウェア トリオを導入すると言われています。 これにより、オッドボール Playbase スピーカーは廃止され、Playbar Sonos の製品ラインナップはプレミアム サウンドバーに置き換えられます。 トリオには何が含まれていますか? ドルビーアトモス対応の Sonos Arc サウンドバー Sonos Five 次世代 Sonos Play:5 スピーカー 第 3 世代 Sonos Sub ソノス アーク は

  2. Spotifyでラジオ局を作成して新しい音楽を見つける方法

    Spotifyは、音楽の好みを特定し、聴くための新しいアーティストを提案するのに最適です。その際、アプリは音楽ライブラリ全体を考慮に入れますが、より具体的な推奨事項が必要な場合はどうなりますか? 先週、特定のトラックを広範囲に聴いていて、同様のトラックを聴きたいとします。 Spotifyの通常の推奨事項を利用しても、音楽パレット全体がカバーされるため、効果がありません。ここでSpotifyRadioが登場します。この機能により、ユーザーは曲、アルバム、プレイリスト、さらにはアーティストに基づいて、よりターゲットを絞ったプレイリストを作成できます。 実際のラジオ局と同様に、ラジオを使用してい