linux查找端口占用程序

在使用linux時,有時會出現想使用的端口被佔用的情況,我們最簡單的處理方式是查找到對應的進程id,然後殺掉

例如使用netstat 命令查看端口的使用情況,例如查看8080端口的佔用情況

樣式: netstat -tlnp | grep 8080

從結果看佔用的程序id是30061,如果我們想要解除端口占用,只需執行 

kill  30061   或者   kill -9 30061

但是單純殺掉進程我們會擔心影響到其他服務,因此我們需要查看是什麼服務佔用的,或者進程是從哪裏被啓動的

一般我們執行

 ps -aux | grep pid

就可以查看當前線程的啓動情況

有時進程啓動方式比較特別,這樣無法直接查到啓動位置,可以執行如下的命令查看啓動位置

ls -l /proc/pid | grep cwd

我們知道/proc/pid 是linux提供的通過文件系統訪問某一進程的訪問接口 ,是存在於內存中的

通過ls -l /proc/pid 可以查看記錄當前進程相關信息的內容

如果要篩選啓動目錄可以執行如下命令

ls -l /proc/pid | grep cwd 

例如

也可以執行下面的命令查找啓動目錄,但是查找比較慢

lsof -p pid | grep cwd

例如

找到對應的啓動目錄,就可以進入查看是什麼服務,以確定是否能夠解除端口占用,kill使用需謹慎

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章