怎么在Linux查看端口被哪个进程占用?

不知道怎么查看Linux端口占用情况?别担心,本文将为您介绍三种Linux查看端口被哪个进程占用的方法。

怎么查看端口被哪个进程占用?

在 Linux 系统中如果某个端口被其他进程占用,就会导致某些服务无法正常启动。例如:当 Web 服务的 80 端口被占用时,Nginx 就无法正常启动。那么,怎么在 Linux 查看端口被哪个进程占用呢?本文将为您介绍三种 Linux 查看端口是否被占用的方法,跟随我们一起来看看吧!

Linux查看端口被哪个进程占用

方法1. netstat 命令

怎么查看端口被哪个进程占用?您可以使用 netstat 命令查看指定端口被哪个进程占用。例如:在终端输入 netstat -tuln | grep :端口号,即可在 Linux 查看端口被哪个进程占用。如果您需要查看80端口被占用的情况,可以通过以下命令进行查看:

# 查看 80 端口占用情况
netstat -tuln | grep :80

Linux查看端口被哪个进程占用

从以上输出结果可以看出,服务器的 80 端口目前处于监听状态(LISTEN),并且绑定了所有的 IPv4 地址(0.0.0.0:80)和 IPv6 地址(:::80),这意味着任何外部主机都可以通过 HTTP 协议访问该服务器的 Web 服务。

方法2. ss 命令

ss 命令相比于 netstat 命令,其执行速度和性能更好,能够更快速地显示系统当前的网络连接信息以及各端口的监听状态。例如,查看 80 端口是否被占用命令如下:

# 查看 80 端口占用情况
ss -tuln | grep :80

ss 命令查看 80 端口占用情况

从以上结果可以看出,任何来自 IPv4 或 IPv6 的请求都可以通过 HTTP 协议访问该服务器,说明 80 端口已经被 Web 服务(如 Nginx 或 Apache)占用并对外提供服务。

方法3. lsof 命令

linux 查看端口被哪个进程占用还可以使用 lsof 命令,它可以查出占用端口的进程的详细信息,包括进程名、进程ID等。Linux查看端口占用情况命令如下:

# 查看 80 端口占用情况
lsof -i :80

lsof 命令查看 80 端口占用情况

输出结果释义:

  • COMMAND​: 占用端口的命令或服务名称;
  • PID​: 进程的 ID;
  • USER​: 运行该进程的用户;
  • FD​: 文件描述符;
  • TYPE​: 套接字的类型;
  • NODE NAME​: 显示端口名称和状态。

lsof 相较于 netstat 和 ss,它提供更加详细的信息,不仅可以显示网络连接情况,还能直接列出具体进程名称和进程 ID。

拓展阅读:高性价比服务器

非凡云是一款高性价比的云服务器,可以为您提供快速稳定、高效灵活的云计算服务。无论您是需要搭建 Web 应用游戏服务器,还是进行高性能计算,非凡云都能凭借其强大的计算能力和灵活的资源配置,为您的业务提供稳定、高效的运行保障。

非凡云

值得一提的是,非凡云已通过ISO 20000(信息技术服务管理体系)与 ISO 27001(信息安全管理体系)双重认证,并且持有增值电信业务经营许可证,是一家专业且值得信赖的云服务提供商。

总结

Linux查看端口被哪个进程占用可以使用 netstat、ss 和 lsof 命令轻松查看。如果您需要在Linux查看端口是否开放,同样也可以使用这些命令检查端口是否开放,以快速确认服务监听情况、排查端口冲突或进行网络安全检测。