gpt4 book ai didi

linux - linux 上的 lsof 和 netstat 有什么区别?

转载 作者:IT王子 更新时间:2023-10-29 01:25:28 28 4
gpt4 key购买 nike

今天遇到一个问题:

当我启动HDP docker容器时,出现错误:

listen tcp 0.0.0.0:8086: bind: address already in use

根据错误信息,我知道8086端口已经被占用,所以我尝试了一些命令来确定哪个程序正在使用8086端口。
lsof -i:8086
lsof -i tcp:8086
lsof | grep 8086

但是上面的所有命令都没有输出!

我对此感到非常困惑,在谷歌搜索后,我尝试了另一个命令:
网络统计-pna | grep 8086

我从这个命令得到了正确的输出。

我知道 lsofnetstat 之间有一些区别,但我真的不知道为什么我不能从 lsof -i:8086 得到任何输出?.

以下是我从 google 搜索到的两个命令之间的一些区别:

netstat(net statistic)是基于连接的,它显示了NW连接(udp/tcp端口)、路由表、接口(interface)、多播成员等。

lsof(list of open files) 是基于应用程序的,这有点像 netstat + ps,在那里你可以看到所有访问的端口、NW 连接等。但是 lsof 包括像我的本地 emacs 窗口终端 session (tty dev/pts/n) 这样的东西,它不是 netstat 的一部分

最佳答案

我今天遇到了类似的问题。解决方案是使用 sudo 权限运行 lsof 命令。

sudo lsof -i:8086 

应该打印所需的输出。

关于linux - linux 上的 lsof 和 netstat 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49381124/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com