当前位置: 代码迷 >> 综合 >> ubuntu 查看端口被占用并处理
  详细解决方案

ubuntu 查看端口被占用并处理

热度:77   发布时间:2024-02-05 16:17:16.0

当启动程序出现端口号被占用的情况,需要查看端口使用情况,使用netstat命令,下面是常用的几个查看端口情况的命令:
查看所有的服务端口(ESTABLISHED
netstat -a
查看所有的服务端口,显示pid号(LISTEN,ESTABLISHED)
netstat -ap

查看某一(**)端口,则可以结合grep命令:

     netstat -ap | grep **

如查看**端口,也可以在终端中输入:

 lsof -i:**

lsof打开的文件可以是:

  1. 普通文件
  2. 目录
  3. 网络文件系统的文件
  4. 字符或设备文件
  5. (函数)共享库
  6. 管道,命名管道
  7. 符号链接
  8. 网络文件(例如:NFS file、网络socket,unix域名socket)
  9. 还有其它类型的文件,等等

命令参数

  • -a 列出打开文件存在的进程
  • -c<进程名> 列出指定进程所打开的文件
  • -g 列出GID号进程详情
  • -d<文件号> 列出占用该文件号的进程
  • +d<目录> 列出目录下被打开的文件
  • +D<目录> 递归列出目录下被打开的文件
  • -n<目录> 列出使用NFS的文件
  • -i<条件> 列出符合条件的进程。(4、6、协议、:端口、 @ip )
  • -p<进程号> 列出指定进程号所打开的文件
  • -u 列出UID号进程详情
  • -h 显示帮助信息
  • -v 显示版本信息

若要停止使用这个端口的程序,使用kill +对应的pid

kill  -9 pid

还有一个比较好用的命令,查看**端口:

sudo netstat -lnp | grep ** 

查看端口号和运行程序:

netstat -atunp | more

查看进程所用端口:

netstat -tlnp|grep **

  相关解决方案