🔪

Macでポートが使われているときの対処法

2022/12/31に公開

実行中のプロセスを確認する: lsofコマンド

lsofコマンドを用いて特定のポートを使用しているプロセスを確認します。

$ lsof -i:{ポート番号} -P

権限が無いと言われた場合は先頭にsudoを追加するとうまくいきます。

$ lsof -i:3000 -P

すると↓のような応答が得られます。

COMMAND   PID      USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
node    27079 andmatcha   28u  IPv4 0xfdb458391b6a2add      0t0  TCP *:3000 (LISTEN)

実行中のプロセスを強制終了する: killコマンド

killコマンドを用いて上で確認したプロセスを強制終了してみます。

$ kill -9 {PID}

$ kill -9 27079

何も表示されませんがOK。もう一度

$ lsof -i:3000 -P

とすると何も表示されなくなりました。
複数のプロセスが同じポートを使用している場合、killしたプロセスだけが表から消えていると思います。

これでプロセスを強制終了することができました。

以上

Discussion