Linuxで現在どのプロセスが特定のポートを使用しているかを調べられるようにしたいと思っています。何か方法はありますか?
141 Evan Fosmark 2009-09-17
ベストアンサー
選択肢はいくつかあります
lsof -i tcp:80
は TCP ポート 80 を使用しているプロセスのリストを表示します
Alternatively,
sudo netstat -nlp
を使用すると、すべてのオープンネットワーク接続が可能になります
151 None 2009-09-17
netstat -lp
9 Nick 2009-09-17
私が使っているのは「CentOS 7 minimal」で、netstat
もlsof
もありません。しかし、多くのLinuxディストリビューションにはソケット統計コマンド(つまりss
)があります
実行例を紹介します
# ss -tanp | grep 6379
LISTEN 0 128 127.0.0.1:6379 *:* users:(("redis-server",pid=2531,fd=4))
8 Oleksandr 2016-10-29
Linuxでは、ポート上で動作しているプロセスを見つけるには、以下のようにします
lsof -i :<port_number>
example:
lsof -i :8080
2 Amit Kaneria 2016-01-05
また、TCPを話している実行中のプロセスをリストアップしたい場合は、使用することができます
sudo netstat -tnp
sudo to get processes you don't own
-t for TCP
-n for numeric
-p for pid
UDP を話すプロセスを取得するには、-t を -u に置き換えます
sudo netstat -unp
0 caffeine 2020-10-09