服務(wù)端綁定端口客戶端第一次連接的時(shí)候,服務(wù)端能夠正常打印出客戶端的ip地址及端口號(hào),再次運(yùn)行時(shí),發(fā)現(xiàn)服務(wù)端一直處于未響應(yīng)的狀態(tài),排查了一段時(shí)間,結(jié)果發(fā)現(xiàn)程序退出時(shí)出現(xiàn)異常,出現(xiàn)了僵尸進(jìn)程,端口一直被占用,那么遇到這個(gè)問題時(shí)該怎么去解決呢?
解決辦法
1、查看端口是否被占用:
1netstat -anp |grep 8888 //查看8888端口的占用情況
出現(xiàn)如下情況說明被占用:
2、查看占用此端口的進(jìn)程PID
1lsof -i :8888
結(jié)果如下:
3、殺死進(jìn)程
1kill -9 4110 //4110為進(jìn)程ID
可以看到成功結(jié)果:
至此端口已解除占用啦
Linux如何查看端口占用情況:
在Linux系統(tǒng)中,您可以使用多種命令來查看端口占用情況。以下是一些常用的方法:
netstat命令
使用netstat命令可以顯示網(wǎng)絡(luò)連接、路由表、接口統(tǒng)計(jì)信息等。
要查看端口占用情況,可以使用以下命令:
netstat -tuln 這將顯示當(dāng)前所有監(jiān)聽的TCP和UDP端口,以及它們的狀態(tài)和進(jìn)程信息。
ss命令
ss命令也用于查看套接字統(tǒng)計(jì)信息,更快速和有效。
要查看端口占用情況,可以使用以下命令:
ss -tuln
lsof命令
lsof命令用于列出所有打開文件和套接字的信息,包括端口占用情況。
要查看某個(gè)特定端口的占用情況,可以使用以下命令:
lsof -i :端口號(hào)例如,要查看端口號(hào)為80的占用情況,可以使用:
lsof -i :80
pidof和fuser命令
pidof和fuser命令用于查找正在使用某個(gè)文件或套接字的進(jìn)程ID。
要查看某個(gè)端口的占用情況,可以結(jié)合使用這兩個(gè)命令,例如:
1pidof -t -x 端口號(hào) fuser 端口號(hào)/tcp
這些命令將顯示占用指定端口的進(jìn)程信息,包括進(jìn)程ID(PID)和進(jìn)程名稱。
您可以根據(jù)需要選擇適合的方法來查看Linux系統(tǒng)中的端口占用情況。