Open2
【Linuxコマンド】使用済みのポートを確認する & 使用済みのポートを停止する方法について📝

使用済みポートを確認する
使用中のポートを確認するには、ターミナルで以下のコマンドを使用します。
-
lsofコマンドを使用する方法
sudo lsof -i -P | grep LISTEN
-
lsof
:システム上の開いているファイルを一覧表示します。 -
-i
:ネットワーク関連のファイルを表示します。 -
-P
:ポート番号を表示します(サービス名ではなく数値で)。 -
grep LISTEN
:リッスン状態のポートのみを表示します。
-
-
netstatコマンドを使用する方法
netstat -vanp tcp | grep LISTEN
-
netstat
:ネットワークの接続状況を表示します。 -
-v
:詳細情報を表示します。 -
-a
:すべてのソケットを表示します。 -
-n
:アドレスとポート番号を数値で表示します。 -
-p tcp
:TCPプロトコルの情報を表示します。 -
grep LISTEN
:リッスン状態のポートのみを表示します。
-
-
特定のポートやプロセスを確認する方法
特定のポートが使用されているか確認したい場合:
sudo lsof -i :ポート番号
例:ポート8080を確認する場合
sudo lsof -i :8080
特定のプロセスが使用しているポートを確認したい場合:
sudo lsof -i -n -P | grep プロセス名
例:
java
プロセスを確認する場合sudo lsof -i -n -P | grep java
注意点:
-
sudo
を使用するため、パスワードの入力が求められる場合があります。 - コマンドの実行結果はシステムの状態によって異なります。
- 不明なプロセスがポートを使用している場合、セキュリティの観点から確認をおすすめします。
これらのコマンドを使用することで、現在使用中のすべてのポートや、それらを使用しているプロセスを確認できます。

使用済みのPortを停止する方法📝
lsof -i -P | grep LISTEN
コマンドで特定のポートがLISTEN状態にあるプロセスを特定した後、そのポートのLISTENを止めるには、該当するプロセスを終了する必要があります。
以下に手順を説明します。
1. ポートを特定する
まず、lsof -i -P | grep LISTEN
を実行して、停止したいポートを確認します。出力例は以下のようになります:
sshd 1234 root 3u IPv4 12345 0t0 TCP *:22 (LISTEN)
nginx 5678 nginx 4u IPv4 67890 0t0 TCP *:80 (LISTEN)
この例では、ポート 22
(sshd)やポート 80
(nginx)がLISTEN状態です。停止したいポート(例: ポート 80
)をメモします。
2. プロセスID(PID)を確認する
上記の出力で、該当ポートに関連するプロセスID(PID)を確認します。たとえば、ポート 80
を使っているプロセスのPIDは 5678
です。
もし複数のプロセスが同じポートを使っている場合、それぞれのPIDを確認してください。
kill
コマンドでプロセスを終了する
3. ポートを解放するには、該当するプロセスを終了します。以下の方法でプロセスを終了できます:
プロセスを安全に終了するには、まず SIGTERM
シグナルを送ります:
kill -15 <PID>
例: PID 5678
を終了する場合:
kill -15 5678
プロセスが終了しない場合は、強制終了(SIGKILL
)を使います:
kill -9 <PID>
例:
kill -9 5678