ホームページ >システムチュートリアル >Linux >Linuxの特定のポートで実行されているプロセスを殺す方法
このガイドでは、特定のネットワークポートにバインドされたLinuxプロセスを識別および終了する方法について詳しく説明しています。これは、反応しないアプリケーションのトラブルシューティングや、他のサービスのポートの解放に不可欠です。このタスクを効率的に達成するために、いくつかのコマンドラインツールを検討します。
導入
複数のプロセスは、ネットワークポートを同時に利用できます。反応しないプロセスは、アプリケーションの機能やサービスの可用性を破壊する可能性があり、占有ポートを解放するための終了を必要とします。たとえば、反応しないApache Webサーバー(通常、ポート80または443を使用)には、Webサイトのアクセシビリティを復元するために終了と再起動が必要です。このチュートリアルは、 fuser
、 lsof
、 netstat
、およびss
コマンドを使用して、これらのプロセスを見つけて終了することをカバーしています。
fuser
でプロセスを識別および終了します
fuser
コマンドは、特定のファイルまたはソケットを使用してプロセスを識別します。 psmisc
パッケージの一部です。必要に応じて、ディストリビューションのパッケージマネージャーを使用してインストールします(たとえば、 sudo apt install psmisc
、 sudo pacman -S psmisc
)。
プロセスを特定: fuser<port_number> /tcp</port_number>
を使用しますfuser<port_number> /tcp</port_number>
(またはUDPの場合/udp
)。たとえば、 fuser 8080/tcp
TCPポート8080を使用したプロセスを示しています。
プロセスを終了します: fuser -k 8080/tcp
TCPポート8080を使用してプロセスを終了します。ポートは、終了後に一時的にTIME_WAIT
状態にとどまることができることに注意してください。
lsof
を使用して、プロセスを識別および殺害します
lsof
(リストオープンファイル)は、オープンファイルと関連するプロセスに関する詳細情報を提供します。
プロセスID(PID)を見つける: sudo lsof -i :<port_number></port_number>
指定されたポートを使用してプロセスをリストします。たとえば、 sudo lsof -i :8080
ポート8080を使用したプロセスを示しています。PIDを見つけます。
プロセスを終了します: sudo kill -9<pid></pid>
を使用しますsudo kill -9<pid></pid>
、交換<pid></pid>
プロセスIDで。 -9
強力なSIGKILL
信号を送信します。
終了のためのワンライナーlsof
コマンド:
簡潔なワンライナーはkill -9 $(lsof -t -i:8080 -sTCP:LISTEN)
プロセスの識別と終了を組み合わせます。これにより、TCPポート8080でリスニングされるプロセスが殺されます。慎重に使用します。 SIGKILL
は力強いです。
サービス終了のためのnetstat
およびss
netstat
およびss
(ソケット統計)は、ネットワーク接続の詳細を表示します。 ss
は一般に、その効率とより明確な出力に好まれます。
サービスを識別します: sudo netstat -tnlp | grep<service_name></service_name>
を使用しますsudo netstat -tnlp | grep<service_name></service_name>
またはsudo ss -tnlp | grep<service_name></service_name>
サービスのPIDを見つけるために(例、 grep apache
)。
サービスを終了します: sudo kill<pid></pid>
を使用しますsudo kill<pid></pid>
またはsudo kill -9<pid></pid>
プロセスを終了します。
よくある質問(FAQ)
(このセクションは、貴重な情報を提供するため、オリジナルからほとんど変わらないままです。)
結論
fuser
、 lsof
、 netstat
、およびss
、プロセスとポートを管理するための堅牢な方法を提供します。あなたのニーズに最適なツールを選択し、プロセスを強制的に終了するときは常に注意を払ってください。 TIME_WAIT
状態による短い港の利用不能の可能性を忘れないでください。
以上がLinuxの特定のポートで実行されているプロセスを殺す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。