首頁 > 軟體

使用lsof命令查詢在Linux中偵聽指定埠的進程

2020-06-16 16:27:36

尋找監聽指定埠的過程,對於系統管理員來說,是一個永恆的話題。歷史上,Linux發行版可以使用第三方lsof。

lsof是一個命令,意為“列出開啟的檔案”,在許多類似Unix的系統中使用該命令報告所有開啟檔案的列表以及開啟它們的進程。 該開源實用程式是由普渡大學計算機中心退休副主任Victor A. Abell開發並提供支援的。 它可以工作並支援多種Unix風格。

[linuxidc@localhost www.linuxidc.com]$ sudo netstat -na -p tcp | grep LISTEN

現在,您想知道哪個正在監聽“tcp6 0 0 :::80 :::* LISTEN 1186/nginx ”

[linuxidc@localhost www.linuxidc.com]$ sudo lsof -ni tcp:80
[sudo] linuxidc 的密碼:
COMMAND  PID  USER  FD  TYPE DEVICE SIZE/OFF NODE NAME
nginx  1186  root    8u  IPv4  33882      0t0  TCP *:http (LISTEN)
nginx  1186  root    9u  IPv6  33883      0t0  TCP *:http (LISTEN)
nginx  1190 nginx    8u  IPv4  33882      0t0  TCP *:http (LISTEN)
nginx  1190 nginx    9u  IPv6  33883      0t0  TCP *:http (LISTEN)

[linuxidc@localhost www.linuxidc.com]$ sudo ps -opid,ppid,uid,addr,fname,comm,args -p 1186
  PID  PPID  UID ADDR COMMAND  COMMAND        COMMAND
  1186      1    0    - nginx    nginx          nginx: master process /usr/sbi

[linuxidc@localhost www.linuxidc.com]$ sudo lsof -n -p 1186| grep TCP
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /home/linuxidc/.gvfs
      Output information may be incomplete.
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
      Output information may be incomplete.
nginx  1186 root    8u  IPv4              33882      0t0      TCP *:http (LISTEN)
nginx  1186 root    9u  IPv6              33883      0t0      TCP *:http (LISTEN)


IT145.com E-mail:sddin#qq.com