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, 解决办法升级系统补丁。

 

posted @ 2020-01-10 13:30  莫让年华付水流  阅读(2166)  评论(0编辑  收藏  举报