Linux查看端口占用進(jìn)程號(hào)
在Linux系統(tǒng)中,我們經(jīng)常需要查看某個(gè)端口被哪個(gè)進(jìn)程占用,以便進(jìn)行相關(guān)的操作或排查問(wèn)題。本文將介紹幾種常用的方法來(lái)查看端口占用的進(jìn)程號(hào)。
方法一:使用netstat命令
Netstat是一個(gè)用于顯示網(wǎng)絡(luò)連接、路由表和網(wǎng)絡(luò)接口信息的命令行工具。通過(guò)使用netstat命令,我們可以查看當(dāng)前系統(tǒng)中所有的網(wǎng)絡(luò)連接和監(jiān)聽(tīng)端口。
要查看指定端口的占用進(jìn)程號(hào),可以使用以下命令:
netstat -tlnp | grep 端口號(hào)
其中,-tlnp選項(xiàng)用于顯示所有TCP和UDP監(jiān)聽(tīng)端口的詳細(xì)信息,grep命令用于過(guò)濾指定端口號(hào)的結(jié)果。
例如,要查看端口號(hào)為80的占用進(jìn)程號(hào),可以運(yùn)行以下命令:
netstat -tlnp | grep 80
該命令將輸出類似以下結(jié)果:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1234/nginx
其中,1234即為占用端口80的進(jìn)程號(hào),nginx為進(jìn)程的名稱。
方法二:使用lsof命令
lsof是一個(gè)用于查看系統(tǒng)打開(kāi)的文件和進(jìn)程的命令行工具。通過(guò)使用lsof命令,我們可以查看指定端口的占用進(jìn)程號(hào)。
要查看指定端口的占用進(jìn)程號(hào),可以使用以下命令:
lsof -i :端口號(hào)
例如,要查看端口號(hào)為80的占用進(jìn)程號(hào),可以運(yùn)行以下命令:
lsof -i :80
該命令將輸出類似以下結(jié)果:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 1234 root 6u IPv4 12345 0t0 TCP *:80 (LISTEN)
其中,1234即為占用端口80的進(jìn)程號(hào),nginx為進(jìn)程的名稱。
方法三:使用ss命令
ss命令是一個(gè)用于查看網(wǎng)絡(luò)連接、路由表和多播組成員等信息的命令行工具,它是netstat的替代品,具有更高的性能和更多的功能。
要查看指定端口的占用進(jìn)程號(hào),可以使用以下命令:
ss -ltnp | grep 端口號(hào)
其中,-ltnp選項(xiàng)用于顯示所有TCP監(jiān)聽(tīng)端口的詳細(xì)信息,grep命令用于過(guò)濾指定端口號(hào)的結(jié)果。
例如,要查看端口號(hào)為80的占用進(jìn)程號(hào),可以運(yùn)行以下命令:
ss -ltnp | grep 80
該命令將輸出類似以下結(jié)果:
LISTEN 0 128 0.0.0.0:80 0.0.0.0:* users:(("nginx",1234,"tcp",6))
其中,1234即為占用端口80的進(jìn)程號(hào),nginx為進(jìn)程的名稱。
通過(guò)使用netstat、lsof或ss命令,我們可以方便地查看Linux系統(tǒng)中指定端口的占用進(jìn)程號(hào)。這些方法可以幫助我們快速定位問(wèn)題或進(jìn)行相關(guān)操作。