node
ローカルを起動するのによく使っているのですが、誤ってCtrl + Z
(Command + Z
)を押してサービスを終了してしまうことがありますが、実際にはサービスが終了しておらず、再度サービスを開始する際にポート番号が占有されている旨のメッセージが表示されることがあります。
動作環境:Mac
ポートの詳細なポート占有ステータスを表示します。
コマンド: lsof -i: ポート番号
例: ポート番号 8081 の占有率をクエリします。
lsof -i :8081
占有されている場合は、次のように出力されます。
tiven@bogon nginx % lsof -i :8081
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
node 17511 tiven 23u IPv4 0x775d1be9a6cf821b 0t0 TCP *:sunproxyadmin (LISTEN)
Google 83605 tiven 33u IPv4 0x775d1be9a6d2021b 0t0 TCP localhost:58814->localhost:sunproxyadmin (ESTABLISHED)
ポート番号に対応するプロセスサービスを終了します。
上記の情報は、ノード プログラムがポート 8081 を占有しており、このマシンのプロセス IDが 17511 であることを示しています。ポート 8081 を使用したい場合は、まずアプリケーションを閉じます。
コマンド:kill PID
強制シャットダウン コマンド:kill -9 PID
kill 17511
# 强制关闭
kill -9 17511
天文ブログへようこそ