首先使用netstat、ss或lsof命令查看端口占用情况,例如sudo netstat -tulnp | grep 端口号可显示监听该端口的进程PID和名称,sudo ss -tulnp | grep 端口号功能类似且效率更高,而sudo lsof -i :端口号能直接列出访问该端口的进程信息,包括命令名、PID及用户,帮助快速定位占用端口的进程。

如果您在使用LINUX系统时需要排查某个端口的使用情况,但不确定是哪个进程占用了该端口,可以通过系统命令快速定位。以下是几种有效的方法来查看端口被哪个进程占用。
本文运行环境:Dell XPS 13,Ubuntu 24.04
netstat 是一个网络统计工具,可以显示当前所有活动的网络连接、监听端口以及对应的进程信息。通过结合特定参数,能够精确查出端口与进程的关联关系。
1、打开终端,输入以下命令以列出所有正在监听的TCP端口及其对应的进程:
sudo netstat -tulnp | grep 端口号
2、将“端口号”替换为实际要查询的数字,例如80或3306。
3、输出结果中的“Proto”列显示协议类型,“Local Address”显示本地地址和端口,“PID/Program name”则标明了占用端口的进程ID和名称。
ss(Socket Statistics)是新一代的网络诊断工具,功能比netstat更高效,推荐在现代LINUX发行版中优先使用。
1、在终端执行如下命令来查看指定端口的占用情况:
sudo ss -tulnp | grep 端口号
2、解释各选项含义:-t 表示显示TCP连接,-u 表示UDP,-l 表示仅显示监听状态,-n 表示不解析服务名,-p 显示关联的进程信息。
3、从输出中找到对应端口的行,查看“Process”字段即可获知进程名称和PID。
lsof 可以列出打开的文件,由于LINUX中一切皆文件,网络端口也被视为特殊文件,因此可用此命令进行精准搜索。
1、在终端运行以下命令:
sudo lsof -i :端口号
2、注意冒号后直接跟端口号,例如 sudo lsof -i :22 用于查看SSH服务占用情况。
3、输出结果中“COMMAND”列为进程名,“PID”为进程ID,“USER”表示运行该进程的用户,“NAME”列显示具体的网络连接。
以上就是LINUX如何查看端口被哪个进程占用_LINUX查看端口占用教程的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号