はじめに
コジマです。
開発環境のサーバーを起動しようとしたら
前回のプロセスが残ってて起動できない!!
なんてときに読んでほしい記事です。
特定する
管理者権限でコマンドプロンプトを起動し、
以下のコマンドを実行します。
こんなのが出てきます。本当はもっといっぱい出てきます。
探すの大変ですね。
アクティブな接続 プロトコル ローカル アドレス 外部アドレス 状態 PID TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 2612 TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:623 0.0.0.0:0 LISTENING 58676 TCP 0.0.0.0:2179 0.0.0.0:0 LISTENING 20040 TCP 0.0.0.0:5040 0.0.0.0:0 LISTENING 34376 TCP 127.0.0.1:10403 0.0.0.0:0 LISTENING 54300 TCP 127.0.0.1:10403 127.0.0.1:50771 ESTABLISHED 54300 TCP 127.0.0.1:16992 127.0.0.1:52986 TIME_WAIT 0 TCP 127.0.0.1:16992 127.0.0.1:53038 TIME_WAIT 0 TCP 127.0.0.1:27017 0.0.0.0:0 LISTENING 16416 TCP 127.0.0.1:50760 127.0.0.1:50761 ESTABLISHED 54300
オプションの説明は以下の通り。(ヘルプから抜粋)
-n アドレスとポート番号を数値形式で表示します。
-o 各接続に関連付けられたそれらを所有するプロセス ID を表示します。
削除する
自分の削除したいポートを「ローカル アドレス」列から探します。
それと同じ行のPIDを確認します。
そのプロセスを削除するためのコマンドが以下になります。
※[PID]のところは自分が消したいPID
間違っても1桁~3桁のシステム固有のPIDは削除しないように注意してください。
バグります。
これであなたが使いたいプロセスは再び使えるようになるはずです。
さいごに
ローカル環境にサーバー立てたりすると時々起こります。
少々荒っぽいですが、どうにもうまくいかないときの手段としてご活用ください。
この記事を面白いまたは役に立ったと思ってくれた方は是非私のTwitter(@kojimanotech)を
フォローしてくれたらうれしいです!
以上、コジマでした。