linux查看端口狀態相關命令


netstat

netstat 命令應用是比較頻繁的,比如查看端口占用啦,查看端口進程啦,這些時候都是有必要的。

netstat命令各個參數說明如下

  -t : 指明顯示TCP端口

  -u : 指明顯示UDP端口

  -l : 僅顯示監聽套接字(所謂套接字就是使應用程序能夠讀寫與收發通訊協議(protocol)與資料的程序)

  -p : 顯示進程標識符和程序名稱,每一個套接字/端口都屬於一個程序。

  -n : 不進行DNS輪詢,顯示IP(可以加速操作)

舉栗子:

  • 查看所有TCP端口
    1
    [root@hserver1 ~] # netstat -ntlp
  • 查看所有8088端口
    1
    2
    [root@hserver1 ~] # netstat -ntulp | grep 8088
    tcp6       0      0 :::8088                 :::*                    LISTEN      23147/. /wstack-meta
  • 查看服務器上所有的服務跟端口
    1
    [root@hserver1 ~] # netstat -anlp
  • 查看某服務占用的端口情況,比如:nginx
    1
    2
    [root@hserver1 ~] # netstat -ntulp | grep nginx
    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      4504 /nginx : master

      

  • 查看指定端口的連接數量,比如:80
    1
    2
    [root@hserver1 ~] # netstat -pnt |grep :80 |wc
          17     119    1717

      

lsof

lsof 可以用來查看指定端口所運行的程序,當前netstat也是可以的,只是這個更清晰一點。

1
2
3
[root@hserver1 ~] # lsof -i :8088
COMMAND     PID USER   FD   TYPE     DEVICE SIZE /OFF NODE NAME
wstack-me 23147 root    9u  IPv6 3282730103      0t0  TCP *:radan-http (LISTEN)

  

ps

ps 是LINUX下最常用的也是非常強大的進程查看命令

下面對命令選項進行說明:
    -e 顯示所有進程。
    -f 全格式。

舉栗子:

  • ps e 列出程序時,顯示每個程序所使用的環境變量。
  • ps f 用ASCII字符顯示樹狀結構,表達程序間的相互關系
  • 查看某進程是否存在
    1
    [root@hserver1 ~] # ps -ef | grep nginx

當然,加上f會看到很多信息,會比較亂,有時候也可以直接:

1
2
3
[root@hserver1 ~] # ps -e | grep nginx
  4504 ?        00:00:00 nginx
  4505 ?        00:00:00 nginx


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM