Solaris平台上如何知道某个端口被哪个进程和应用程序占用?
发布日期:2021-10-04 12:38:35
浏览次数:3
分类:技术文章
本文共 1034 字,大约阅读时间需要 3 分钟。
我经常在Solaris服务器上启好几个Tomcat和GlassFish, 会遇到"端口"被占用的错误, 很难直接用命令得知这个端口到底被哪个进程或者应用程序占用了, Alex给了我三个解决方案。附带说一句,我只尝试了第一种方案,相当的好用。而Alex愿意花时间找解决方案,却不愿意花几分钟把这些好东西写出来,结果就是被我发表出来。功劳还是要归Alex Peng.
第一种方案:
1。使用下面shell script,先建立一个port.sh文件:
# more /tmp/port.sh#!/bin/shfor pid in `ls /proc`
do pf=`/usr/bin/pfiles $pid 2>/dev/null` if echo $pf | grep $1 > /dev/null 2>&1 then echo $pid /usr/bin/pargs $pid fidone2。运行port.sh, 传入端口号,比如53250 :
# /tmp/port.sh 532503。运行结果如下:
12251225: /usr/lib/thunderbird/thunderbird-bin -UILocale zh-CN-contentLocale CNargv[0]: /usr/lib/thunderbird/thunderbird-binargv[1]: -UILocaleargv[2]: zh-CNargv[3]: -contentLocaleargv[4]: CN42124212: /bin/sh /tmp/port.sh 53250argv[0]: /bin/shargv[1]: /tmp/port.shargv[2]: 53250 第二种方案:下载"lsof" package。但可能不适合每种情况第三种方案:
使用MDB from socket info (netstat output), you can know its vnode from vnode info, you can know which process owns it from process info, you can know its args, so comes the result.Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1899779
转载地址:https://blog.csdn.net/liguiyuan/article/details/1948922 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月25日 15时14分02秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
airplay协议开发第3部(mdnsd注册airplay服务)
2019-04-28
内存中数据存储的格式
2019-04-28
二进制、十进制、十六进制换算
2019-04-28
有符号和无符号数分析
2019-04-28
ASCII码
2019-04-28
linux系统操作常用基础命令
2019-04-28
计算CP、CR、CF1、OP、OR、OF1和mAP的top-3评价指标
2019-04-28
python将嵌套数组转为单层数组
2019-04-28
pytorch打印自定义网络的每层的名称
2019-04-28
解决ubantu只能读取U盘文件,不能将文件复制到U盘里面
2019-04-28
MS-COCO2014数据集标签互译
2019-04-28
MacBook Pro快捷键总结
2019-04-28
解决mac里面打开控制台提示 您需要安装JDK才能使用"java"命令行工具
2019-04-28
reactos操作系统实现(92)
2019-04-28
reactos操作系统实现(93)
2019-04-28