AIX根据端口号查杀进程
日常运维工作中,经常需要重启weblogic服务。如果一台服务器上同时有几个weblogic,可以参看下面的方法通过端口号定位到具体的进程号。
具体步骤:
1.找到该端口连接对应的 PCB/ADDR 和连接的协议类型。
注:PCB ----Protocol Control Block
?
# netstat -Aan|grep 6666
f1000e001a5c5bb0 tcp 0 0 10.10.5.28.6666 *.* LISTEN
f1000e0007eb33b0 tcp6 0 0 ::1.6666 *.* LISTEN
f1000e001a64a3b0 tcp 0 0 127.0.0.1.6666 *.* LISTEN
f1000e0007f98bb0 tcp 0 0 192.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 10551488 7799036 0 10:20:04 pts/2 0:00 grep 24707268
?
root 15073514 24707268 0 Feb 21 - 0:43 /opt/MercuryDiagnostics/JavaAgent/DiagnosticsAgent/lib/../bin/ppc-aix/systemmetrics?
root 24707268 23199974 85 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