AIX系統查看某個進程占用了該端口


AIX系統查看某個進程占用了該端口,


1.根據端口查進程
netstat -Aan | grep LISTEN     //查看主機打開的所有監聽端口
netstat -Aan | grep <portnumber>    //查看指定端口的PCB/ADDR 
找到該端口連接對應的 PCB/ADDR 和連接的協議類型。
注:PCB ----Protocol Control Block


2. 如果是 tcp 連接,則 rmsock <PCB/ADDR> tcpcb
如果是 udp 連接,則 rmsock <PCB/ADDR> inpcb


下面我們以 ssh 服務所使用的 22 號端口為例,說明該方法:
netstat  -Aan | grep  *.22

提示:
f1000e000192cbb8 tcp 0 0 *.23 *.* LISTEN
可以看到 PCB/ADDR 為 f1000e000192cbb8 ,且協議類型為 tcp 。

rmsock   f1000e000192cbb8   tcpcb

提示:
The socket 0xf1000e000192c808 is being held by proccess 3932278 (sshd).
命令報告該端口正在被 sshd 進程使用, PID 為3932278 。

可進一步查看進程序的執行文件
ps  -ef | grep  3932278

注:如果執行  rcmsock <PCB/ADDR>  tcpcb  報以下錯誤:
usage:  rmsock Addr TypeOfAddr
原因:當進程數超過1907個時會有報錯,這是個bug, 解決辦法升級系統補丁。

 


免責聲明!

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



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