TCP ポートをリッスン/使用するプロセスを見つける (および終了する) にはどうすればよいでしょうか? 私は macOS を使用しています。
クラッシュやバグが発生した後、Rails アプリがポート 3000 をロックすることがあります。ps -ef
...を使用しても見つかりません。
実行中
rails server
私は
Address already in use - bind(2) (Errno::EADDRINUSE)
Node.jsプロセスを停止する場合も同じ問題が発生します。プロセスが停止し、アプリの実行が停止した後でも、ポート3000
はロックされています。アプリを再度起動すると、
Address already in use (Errno::EADDRINUSE)
ベストアンサー1
macOS El Capitan以降の場合(または netstat が をサポートしていない場合-p
) は、 を使用しますlsof
。
lsof -i tcp:3000
あるいは、以下を使用することもできますnetstat
:
netstat -vanp tcp | grep 3000
PID (プロセス ID) を取得したら、次を使用します。
kill -9 <PID>