在linux使用過程中,需要了解當前系統開放了哪些端口,並且要查看開放這些端口的具體進程和用戶,可以通過netstat命令進行簡單查詢
netstat命令各個參數說明如下:
-t:指明顯示TCP端口
-u:指明顯示UDP端口
-l:僅顯示監聽套接字(所謂套接字就是使用應用程序能夠讀寫與收發通訊協議(protocol)與資料的程序)
-p:顯示進程標識符和程序名稱,每一個套接字/端口都屬於一個程序
-n:不進行DNS輪詢,顯示IP(可以加速操作)
即可顯示當前服務器上所有端口及進程服務,於grep結合可查看某個具體端口及服務情況
netstat -ntlp //查看當前所有tcp端口
netstat -ntulp | grep 80 //查看所有80端口使用情況
Linux查看程序端口占用情況
ps -aux | grep tonmcat
發現並沒有8080端口的tomcat進程。
使用命令:netstat -apn
查看所有的進程和端口使用情況。發現下面的進程列表,其中最后一欄是PID/Program name
netstat -anp|grep 8080 --> tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 28500/java
發現8080端口被pid為28500的java進程占用,
進一步使用命令:ps -aux | grep java,或者直接: ps -aux | grep pid查看
ps -aux | grep 28500 --> r/local/tomcat9-jforum/tomcat
就可以明確知道8080是被哪個程序占用了!然后判斷是否使用kill命令干掉!
方法二:直接使用 netstat -anp | grep 8080