怎么查看linux 端口占用,linux端口
在 Linux 系统中,查看端口占用情况可以通过多种方法来实现。以下是一些常用的命令和工具:
使用 netstat
netstat 是一个网络统计工具,可以显示网络连接、路由表、接口统计等信息。
bash
sudo netstat -tuln | grep :<port_number>
-t:显示 TCP 端口
-u:显示 UDP 端口
-l:显示监听状态的端口
-n:以数字形式显示地址和端口号
例如,要查看端口 80 是否被占用:
bash
sudo netstat -tuln | grep :80
使用 ss
ss 是 netstat 的现代替代品,可以显示更多关于套接字的信息。
bash
sudo ss -tuln | grep :<port_number>
例如,要查看端口 22 是否被占用:
bash
sudo ss -tuln | grep :22
使用 lsof
lsof(list open files)可以列出当前系统打开的文件,包括网络套接字。
bash
sudo lsof -i :<port_number>
例如,要查看端口 8080 是否被占用:
bash
sudo lsof -i :8080
使用 fuser
fuser 可以显示哪些进程在使用指定的文件、套接字等。
bash
sudo fuser <port_number>/tcp
例如,要查看端口 5432 是否被占用:
bash
sudo fuser 5432/tcp
使用 nmap
nmap 是一个网络扫描工具,可以用来扫描端口。虽然它主要用于扫描远程主机,但也可以用于本地主机。
bash
sudo nmap -sT -O localhost | grep <port_number>
不过,为了简单起见,你可以使用 nmap 只扫描特定端口:
bash
sudo nmap -p <port_number> localhost
例如,要扫描端口 80:
bash
sudo nmap -p 80 localhost
示例输出解释
netstat 和 ss 的输出通常包括协议(TCP/UDP)、本地地址和端口、远程地址和端口、状态等信息。
lsof 的输出包括命令名、PID、用户、文件描述符、文件类型、设备、大小/节点、名称等信息。
fuser 的输出是占用该端口的进程 ID 列表。
nmap 的输出包括主机名、端口号、状态、服务等信息。
通过这些命令,你可以轻松找到哪个进程占用了特定的端口,并进行相应的处理。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)