j60017268 发表于 2013-2-7 12:57:40

AIX根据端口号查杀进程

日常运维工作中,经常需要重启weblogic服务。如果一台服务器上同时有几个weblogic,可以参看下面的方法通过端口号定位到具体的进程号。
具体步骤:
1.找到该端口连接对应的 PCB/ADDR 和连接的协议类型。
注:PCB ----Protocol Control Block
 
# netstat -Aan|grep 6666
f1000e001a5c5bb0 tcp      0      010.10.5.28.6666    *.*                LISTEN
f1000e0007eb33b0 tcp6       0      0::1.6666                                    *.*                LISTEN
f1000e001a64a3b0 tcp      0      0127.0.0.1.6666   *.*                LISTEN
f1000e0007f98bb0 tcp      0      0192.168.5.50.6666*.*                LISTEN
 

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

# rmsock f1000e001a5c5bb0 tcpcb
The socket 0x1a5c5808 is being held by proccess 24707268 (java).
 
3.查看查找到的进程号信息。

# ps -ef|grep 24707268
    root 105514887799036   0 10:20:04pts/20:00 grep 24707268
 
root 15073514 24707268   0   Feb 21      -0:43 /opt/MercuryDiagnostics/JavaAgent/DiagnosticsAgent/lib/../bin/ppc-aix/systemmetrics 
    root 24707268 2319997485   Feb 21      - 1839:19 /usr/java6_64/bin/java -Xms1536m -Xmx2046m -javaagent:/opt/MercuryDiagnostics/JavaAgent/DiagnosticsAgent/lib/probeagent.jar -Dweblogic.Name=AdminServer -Djava.security.policy=/bea/bea1031/wlserver_10.3/server/lib/weblogic.policy -da -Dplatform.home=/bea/bea1031/wlserver_10.3 -Dwls.home=/bea/bea1031/wlserver_10.3/server -Dweblogic.home=/bea/bea1031/wlserver_10.3/server -Dweblogic.management.discover=true -Dwlw.iterativeDev=false -Dwlw.testConsole=false -Dwlw.logErrorsToConsole=false -Dweblogic.ext.dirs=/bea/bea1031/patch_wls1031/profiles/default/sysext_manifest_classpath weblogic.Server
页: [1]
查看完整版本: AIX根据端口号查杀进程