Linux: 已占用接口

Linux: 已占用接口

  • [1. netstat(适用于旧系统)](#1. netstat(适用于旧系统))
    • [1.1 书中对该命令的介绍](#1.1 书中对该命令的介绍)
  • [2. ss(适用于新系统,替代 netstat)](#2. ss(适用于新系统,替代 netstat))
  • [3. lsof(查看详细进程信息)](#3. lsof(查看详细进程信息))
  • [4. fuser(快速查找占用端口的进程)](#4. fuser(快速查找占用端口的进程))
  • [5. 只查找某个端口是否被占用](#5. 只查找某个端口是否被占用)

1. netstat(适用于旧系统)

powershell 复制代码
netstat -tulnp

参数说明:

  • -t:显示 TCP 端口
  • -u:显示 UDP 端口
  • -l:仅显示 监听中的端口
  • -n:不解析域名,直接显示 IP 和端口号
  • -p:显示 占用端口的进程 ID 和名称

🌰

powershell 复制代码
[root@hecs-230192 ~]# netstat -tulnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1164/sshd           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      792/master          
tcp6       0      0 :::2181                 :::*                    LISTEN      1410/java           
tcp6       0      0 :::2888                 :::*                    LISTEN      1410/java           
tcp6       0      0 :::3888                 :::*                    LISTEN      1410/java           
tcp6       0      0 :::8080                 :::*                    LISTEN      1410/java           
tcp6       0      0 :::42576                :::*                    LISTEN      1410/java           
tcp6       0      0 :::22                   :::*                    LISTEN      1164/sshd           
tcp6       0      0 ::1:25                  :::*                    LISTEN      792/master          
udp        0      0 0.0.0.0:68              0.0.0.0:*                           549/dhclient        
udp        0      0 127.0.0.1:323           0.0.0.0:*                           497/chronyd         
udp6       0      0 ::1:323                 :::*                                497/chronyd  

🌰

🌰

powershell 复制代码
Proto Recv-Q Send-Q Local Address     Foreign Address   State       PID/Program name
tcp        0      0 0.0.0.0:80        0.0.0.0:*         LISTEN      1234/nginx
tcp        0      0 127.0.0.1:3306    0.0.0.0:*         LISTEN      5678/mysqld

✅ 这里可以看到:

  • 80 端口被 Nginx (PID: 1234) 占用
  • 3306 端口被 MySQL (PID: 5678) 占用

1.1 书中对该命令的介绍

2. ss(适用于新系统,替代 netstat)

powershell 复制代码
ss -tulnp

🔹 ss 比 netstat 更快,占用更少资源,适用于现代 Linux 发行版(如 CentOS 7+、Ubuntu 20+)。

3. lsof(查看详细进程信息)

powershell 复制代码
lsof -i :8080

🔹 -i :8080:查找 8080 端口 是否被占用。

📌 示例输出:

powershell 复制代码
COMMAND  PID  USER  FD  TYPE  DEVICE SIZE/OFF NODE NAME
java     3456 root  6u  IPv6  123456  0t0      TCP *:8080 (LISTEN)

✅ 说明 8080 端口 被 PID 3456 的 Java 进程 占用。

4. fuser(快速查找占用端口的进程)

powershell 复制代码
fuser -v 8080/tcp

[root@hcss-ecs-2ff4 ~]# fuser -v 8080/tcp
                     USER        PID ACCESS COMMAND
8080/tcp:            root       1553 F.... java

✅ 说明 进程 1553 占用了 8080 端口。

5. 只查找某个端口是否被占用

powershell 复制代码
netstat -anp | grep :8080

[root@hcss-ecs-2ff4 ~]# netstat -anp | grep :8080
tcp6       0      0 :::8080                 :::*                    LISTEN      1553/java     

或者:

powershell 复制代码
ss -anp | grep :8080

[root@hcss-ecs-2ff4 ~]# ss -anp | grep :8080
tcp    LISTEN     0      50     [::]:8080               [::]:*                   users:(("java",pid=1553,fd=58))
相关推荐
C++ 老炮儿的技术栈6 分钟前
GCC编译时无法向/tmp 目录写入临时汇编文件,因为设备空间不足,解决
linux·运维·开发语言·汇编·c++·git·qt
Agent产品评测局17 分钟前
企业数据处理自动化落地,抓取分析全流程实现方案 —— 2026企业级智能体选型与技术路径深度解析
运维·人工智能·ai·自动化
autumn200520 分钟前
Flutter 框架跨平台鸿蒙开发 - 历史人物对话
服务器·flutter·华为·harmonyos
爱莉希雅&&&42 分钟前
linux中MySQL数据库备份恢复的四种方法(更新中)
linux·数据库·mysql·数据库备份·mysqldumper
我科绝伦(Huanhuan Zhou)1 小时前
分享一个网络智能运维系统
运维·网络
鬼先生_sir1 小时前
Spring Cloud 微服务监控实战:SkyWalking + Prometheus+Grafana 全栈解决方案
运维·spring cloud·grafana·prometheus·skywalking
信创DevOps先锋1 小时前
DevOps工具链选型新趋势:本土化适配与安全可控成企业核心诉求
运维·安全·devops
coppher1 小时前
Ubuntu 22.04 amd64 离线安装 Docker 完整教程
linux·docker
xyz5991 小时前
如何在 WSL 中删除指定版本的 Ubuntu 以及安装
linux·运维·ubuntu
linux修理工1 小时前
Claude code与CC-switch安装使用
运维·人工智能