🔪
Macでポートが使われているときの対処法
実行中のプロセスを確認する: 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