UNIX 上哪些进程正在使用哪些端口?
我需要找出 Unix 机器 (HP Itanium) 上的哪些进程连接了哪些端口。 不幸的是,lsof
没有安装,我也没有办法安装它。
有谁知道替代方法? 相当长的谷歌搜索没有发现任何结果。
I need to find out what ports are attached to which processes on a Unix machine (HP Itanium). Unfortunately, lsof
is not installed and I have no way of installing it.
Does anyone know an alternative method? A fairly lengthy Googling session hasn't turned up anything.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
netstat -l (假设它带有UNIX 版本)
netstat -l (assuming it comes with that version of UNIX)
鉴于(几乎)unix 上的所有内容都是文件,并且 lsof 列出了打开的文件...
Linux:netstat -putan 或 lsof | grep TCP
OSX:lsof | grep TCP grep TCP
其他 Unixen:
lsof
方式...Given (almost) everything on unix is a file, and lsof lists open files...
Linux :
netstat -putan or lsof | grep TCP
OSX :
lsof | grep TCP
Other Unixen :
lsof
way...编辑:仅限 Linux,在其他 UNIX 上 netstat 可能不支持所有这些选项。
EDIT: linux only, on other UNIXes netstat may not support all these options.
假设这是 HP-UX? Ptool 怎么样? - 你安装了那些吗? 如果是这样,您可以使用“pfiles”来查找应用程序正在使用的端口:
for f in $(ps -ex | awk '{print $1}'); 做回声 $f; pfiles $f | pfiles grep 端口号; did
将 PORTNUM 切换为端口号。 :) 可能是子 pid,但可以让您足够接近以识别问题应用程序。
Assuming this is HP-UX? What about the Ptools - do you have those installed? If so you can use "pfiles" to find the ports in use by the application:
for f in $(ps -ex | awk '{print $1}'); do echo $f; pfiles $f | grep PORTNUM; done
switch PORTNUM for the port number. :) may be child pid, but gets you close enough to identify the problem app.
为您提供活动的 tcp/udp 端口。 然后,您可以以 root 身份通过
fuser -n tcp
或fuser -n udp
使用端口,并假设fuser
是 GNU fusionr 或具有类似的选项。如果您需要更多帮助,请告诉我。
gives you the active tcp/udp ports. Then you can use the ports with
fuser -n tcp
orfuser -n udp
, as root, and supposing thatfuser
is GNU fuser or has similar options.If you need more help, let me know.
我使用这个命令:
您可以得到一个干净的输出,显示正在侦听的进程 ID 和端口
I use this command:
You can have a clean output that shows process id and ports that's listening on
尝试使用
pfiles PID
来显示进程的所有打开文件。Try
pfiles PID
to show all open files for a process.UNIX中哪个进程使用端口;
1、netstat -Aan | grep 端口
2. rmsock f1000e000bb5c3b8 tcpcb
3. ps-ef| grep 13959354
Which process uses port in unix;
1. netstat -Aan | grep port
2. rmsock f1000e000bb5c3b8 tcpcb
3. ps -ef | grep 13959354
如果您想了解所有侦听端口及其详细信息:本地地址、外部地址和状态以及进程 ID (PID)。 您可以在 Linux 中使用以下命令。
If you want to know all listening ports along with its details: local address, foreign address and state as well as Process ID (PID). You can use following command for it in linux.