linux埠佔用進程
『壹』 linux如何查看埠被哪個進程佔用
使用netstat 和lsof命令,並用grep來過濾你需要查看的埠。
例如查看tcp有哪些埠打開了:
netstat-a|greptcp
然後查看哪個進程佔用了這些埠:
lsof-i
如果要查看某個埠,比如80埠是哪個進程:
lsof-i|grep:80
『貳』 linux下查看某一埠被哪個進程佔用
1)使用lsof命令
lsof是一個非常強大的linux工具,她被用來查找哪些程序使用了那些文件。在linux系統下,基本上所有的東西都可以被當作文件來用。socket當然也是一種文件了。所以lsof可以用來查找誰用了某一個埠。具體方法:
lsof -i :port_number |grep "(LISTEN)"
-i是用來查找和網路相關的文件,":"號是必須的,它是標志你查找的是一個埠。port_number就是你要查找的埠號,譬如你要查找是否 有程序佔用了oracle的監聽埠1521,就可以使用lsof -i :1521 |grep "(LISTEN)"。如果有程序已經佔用了,那麼下面列印的第二個欄位就是該程序的進程id,第一個欄位是進程的名字。
如果只有losf -i :port_number可能會查到很多應用程序,但這些程序實際並沒有佔用你指定的埠,這些埠只是連接到本機器或者別的機器的該埠。所以要grep "(LISTEN)「,因為一個埠只可能被一個程序佔用的,所以這種方法是可靠的。
2)使用netstat 命令
大家一定對這個命令比較熟悉了,可能你從沒有想到用到來查找哪一個程序的佔用了指定的埠。但是netstat -an 的確提供了這種功能。所以有問題了一定要想到先去查找man手冊,不過說實話,某些man手冊寫得讓中國人看不懂,那沒有辦法了,就googe或者 一下吧。
執行man netstat命令,你會發現netstat 提供了'-p'的選項,這個選項的功能是告訴你哪個程序佔用了該埠,但是她提供的形式比較古怪是以pid/process_name提供的。pid當然 是進程id了,process_name是進程的命令,中間以'/'號分隔。
和上面的原因一樣,我們只查找listen的埠,netstat 給我們提供了-l的選項,這個選項不是默認的選項。
下面以1521埠來看怎麼查找到該程序,我們使用下面的命令:
netstat -lnp|awk 'BEGIN{prt=":1521$"}{if ($4 ~ prt) print $0}'
在這里使用awk來匹配第4個欄位的模式是為了避免誤判。
『叄』 linux 如何查看埠被哪個程序佔用
【步驟一】lsof -i
lsof -i 用以顯示符合條件的進程情況,lsof(list open files)是一個列出當前系統打開文件的工具。以root用戶來執行lsof -i命令,如下圖
【步驟二】lsof -i:埠號
lsof -i:埠號,用於查看某一埠的佔用情況,比如查看22號埠使用情況,lsof -i:22,如下圖
【步驟三】netstat -tunlp
netstat -tunlp用於顯示tcp,udp的埠和進程等相關情況,如下圖
4
【步驟四】netstat -tunlp|grep 埠號
netstat -tunlp|grep 埠號,用於查看指定埠號的進程情況,如查看22埠的情況,netstat -tunlp|grep 22,如下圖
『肆』 linux查看進程佔用埠
以80埠為例
netstat -nltup|grep 80 即可查看到80埠相應的進程及PID
『伍』 Linux查看某個埠號被哪個進程佔用
開始---->運行---->cmd,或者是window+R組合鍵,調出命令窗口
結束該進程:在任務管理器中選中該進程點擊」結束進程「按鈕,或者是在cmd的命令窗口中輸入:taskkill /f /t /im Tencentdl.exe。
『陸』 linux查看系統埠被佔用進程(程序名)
linux查看系統埠被佔用進程(程序名)1ps
-apn後面一列PID/Program
name,會顯示進程id和程序的名字
www.dnjsb.com
如果全是顯示一個-,則可能你不是root用戶,需要加sudo執行才會有。進一步使用命令:ps
-aux
|
grep
java,或者直接:ps
-aux
|
grep
pid
查看
就可以明確知道8080埠是被哪個程序佔用了今天遇到此情況,故mark一下。
『柒』 查看linux中某個埠是否被佔用,被哪個進程佔用
LINUX中如何查看某個埠是否被佔用
總結如下:
1.netstat -anp |grep 埠號
如下,我以3306為例,netstat -anp |grep 3306(此處備注下,我是以普通用戶操作,故加上了sudo,如果是以root用戶操作,不用加sudo即可查看),如下圖1:
圖3
可以看出並沒有LISTEN那一行,所以就表示沒有被佔用。此處注意,圖中顯示的LISTENING並不表示埠被佔用,不要和LISTEN混淆哦,查看具體埠時候,必須要看到tcp,埠號,LISTEN那一行,才表示埠被佔用了。
『捌』 linux下,如何查看一個埠被什麼進程佔用
你好,
使用netstat 和lsof命令,並用grep來過濾你需要查看的埠。
例如查看tcp有哪些埠打開了:
netstat -a| grep tcp然後查看哪個進程佔用了這些埠:
lsof -i如果要查看某個埠,比如80埠是哪個進程:
lsof -i | grep :80
『玖』 Linux可是怎麼查看各個運行的進程佔用的埠
ps命令可以用來查找進程;
在終端上輸入:ps
aux
|
grep
+過濾字元串
例如:我們想查找一個叫streamclient的程序,則輸入:ps
aux
|
grep
streamclient
如果系統列出該進程,則找到了;
在runtime上,可以用該命令確定哪台計算機是主機,因為主機上有一個叫iosys的進程;
因此,輸入:ps
aux
|
grep
iosys
並按回車,如果系統列出該進程,則該機就是主機。