linux 查看端口占用

如题所述

在项目的部署的时候,会遇到端口被占用的情况,需要我们先停下占用端口的进程,然后才能开启新的服务来使用这个端口,那么在linux上怎么查看端口被什么进程占用呢?

一、常用命令:
1,lsof -i:端口号
2,netstat -tunlp|grep 端口号

这两个命令都可以查看端口被什么进程占用。
lsof -i 用以显示符合条件的进程情况,lsof(list open files)是一个列出当前系统打开文件的工具。以root用户来执行lsof -i命令,如下图
lsof输出的每列的意义是:
COMMAND:进程的名称或者进程开启的方式
PID:进程id
USER:进程所有者
FD:文件描述符
TYPE:协议类型
DEVICE:端口号
SIZE/OFF:偏移
NODE:协议名
NAME:节点名

lsof -i:端口号,用于查看某一端口的占用情况,比如查看22号端口使用情况,lsof -i:22

netstat -tunlp用于显示tcp,udp的端口和进程等相关情况
命令里的t,u,n,l,p均有不同含义:
-t 仅显示和tcp相关的
-u 仅显示和udp相关的
-n 不限时别名,能显示数字的全部转换为数字
-l 仅显示出于Listen(监听)状态的
-p 显示建立这些连接的程序名

netstat -tunlp|grep 端口号,用于查看指定端口号的进程情况,如查看22端口的情况,netstat -tunlp|grep 22
温馨提示:答案为网友推荐,仅供参考
相似回答