您的位置:首页 > 其它

在solaris中如何查看端口被哪个进程占用的方法

2012-09-18 15:44 549 查看
原文:
http://bbs.51cto.com/thread-651650-1.html
solaris下没有可以根据端口号查到占用该端口进程的命令,这个问题困扰了我好久,今天终于得以解决了,现在就分享一下,嘿嘿。

首先确定你要查的端口41859

编写个小脚本 test.sh

//********************************************//

cd /proc

for i in *

do

echo ------ process $i ---------

pfiles $i | grep -i "port: 41859"

done

//********************************************//

执行脚本

-bash-3.00$ ./test.sh

然后看结果:

------ process 0 ---------

pfiles: permission denied: 0

------ process 1 ---------

pfiles: permission denied: 1

------ process 10322 ---------

pfiles: permission denied: 10322

------ process 1120 ---------

pfiles: permission denied: 1120

------ process 12248 ---------

------ process 126 ---------

pfiles: permission denied: 126

------ process 1297 ---------

pfiles: permission denied: 1297

------ process 139 ---------

pfiles: permission denied: 139

------ process 140 ---------

pfiles: permission denied: 140

------ process 14736 ---------

pfiles: permission denied: 14736

------ process 1531 ---------

pfiles: permission denied: 1531

------ process 1538 ---------

pfiles: permission denied: 1538

------ process 1540 ---------

------ process 15724 ---------

pfiles: permission denied: 15724

------ process 1585 ---------

------ process 168 ---------

pfiles: permission denied: 168

------ process 176 ---------

pfiles: permission denied: 176

------ process 178 ---------

pfiles: permission denied: 178

------ process 18149 ---------

pfiles: permission denied: 18149

------ process 18160 ---------

pfiles: permission denied: 18160

------ process 18162 ---------

------ process 190 ---------

pfiles: permission denied: 190

------ process 19225 ---------

pfiles: permission denied: 19225

------ process 19233 ---------

------ process 19235 ---------

------ process 2 ---------

pfiles: permission denied: 2

------ process 22077 ---------

------ process 224 ---------

pfiles: permission denied: 224

------ process 22476 ---------

pfiles: permission denied: 22476

------ process 22478 ---------

pfiles: permission denied: 22478

------ process 22479 ---------

pfiles: permission denied: 22479

------ process 22480 ---------

pfiles: permission denied: 22480

------ process 22481 ---------

pfiles: permission denied: 22481

------ process 22482 ---------

pfiles: permission denied: 22482

------ process 22509 ---------

pfiles: permission denied: 22509

------ process 22513 ---------

pfiles: permission denied: 22513

------ process 22515 ---------

pfiles: permission denied: 22515

------ process 236 ---------

pfiles: permission denied: 236

------ process 23848 ---------

pfiles: cannot examine 23848: no such process

------ process 23851 ---------

pfiles: cannot examine 23851: no such process

------ process 23852 ---------

------ process 24156 ---------

pfiles: no such process: 24156

------ process 24509 ---------

pfiles: permission denied: 24509

------ process 25941 ---------

pfiles: permission denied: 25941

------ process 25949 ---------

pfiles: permission denied: 25949

------ process 25951 ---------

------ process 26338 ---------

pfiles: permission denied: 26338

------ process 26472 ---------

pfiles: permission denied: 26472

------ process 26481 ---------

pfiles: permission denied: 26481

------ process 29119 ---------

------ process 3 ---------

pfiles: permission denied: 3

------ process 3457 ---------

pfiles: permission denied: 3457

------ process 3465 ---------

pfiles: permission denied: 3465

------ process 378 ---------

pfiles: permission denied: 378

------ process 429 ---------

pfiles: permission denied: 429

------ process 433 ---------

pfiles: permission denied: 433

------ process 440 ---------

pfiles: permission denied: 440

------ process 448 ---------

pfiles: permission denied: 448

------ process 450 ---------

pfiles: permission denied: 450

------ process 476 ---------

pfiles: permission denied: 476

------ process 478 ---------

pfiles: permission denied: 478

------ process 483 ---------

pfiles: permission denied: 483

------ process 505 ---------

pfiles: permission denied: 505

------ process 508 ---------

pfiles: permission denied: 508

------ process 510 ---------

pfiles: permission denied: 510

------ process 511 ---------

pfiles: permission denied: 511

------ process 512 ---------

pfiles: permission denied: 512

------ process 514 ---------

pfiles: permission denied: 514

------ process 5270 ---------

------ process 5271 ---------

------ process 5290 ---------

sockname: AF_INET 10.64.89.9 port: 41859

------ process 606 ---------

pfiles: permission denied: 606

------ process 607 ---------

pfiles: permission denied: 607

------ process 617 ---------

pfiles: permission denied: 617

------ process 640 ---------

pfiles: permission denied: 640

------ process 647 ---------

pfiles: permission denied: 647

------ process 650 ---------

pfiles: permission denied: 650

------ process 660 ---------

pfiles: permission denied: 660

------ process 6971 ---------

pfiles: permission denied: 6971

------ process 7 ---------

pfiles: permission denied: 7

------ process 713 ---------

pfiles: permission denied: 713

------ process 742 ---------

pfiles: permission denied: 742

------ process 751 ---------

pfiles: permission denied: 751

------ process 9 ---------

pfiles: permission denied: 9

在结果中找到

------ process 5290 ---------

sockname: AF_INET 10.64.89.9 port: 41859

5290就是占用41859的进程号了。

最后,再ps -ef|grep 5290,就差不多可以找到是哪个进程了。也可以ps -auxwww|grep 5290,看到更详细些。

*在执行查找脚本的时候,当前的用户要有足够的权限。像执行结果中有报“permission denied”,这都是没有权限。

所以如果午饭们想要查的,最好用大一点权限的用户,或者就基本可以确定是所在用户的进程,这样才能查得到。

最后再说一句,这个办法还不算很强大,但是对于solaris来说, 没有直接可以通过端口查到进程号的命令,只好这般这般如此了……

如果更容易,更合理的方法,也请指教!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: