面试时候经常问到:
①linux中如何查看某个端口是否被占用?
②如何根据端口号查询该端口被哪个服务占用了?
③如何根据端口号查看进程PID?

总结:主要搞清楚应用程序的端口号、应用程序的进程号、应用程序名三者之间的关系。

netstat查询指定端口占用情况

1、使用 netstat -nultp 命令查询本机所有端口占用情况:【查询本机开启的所有服务(一个端口代表开启了一个服务)】

Linux之①如何查看某个端口号被占用?②如何根据端口号查询哪个服务占用?③如何根据端口号查看进程PID?(根据应用的端口号查看应用的进程号 || 根据应用名查看应用的进程号 || 根据应用端口号查询应用名)

主要查看tcp对应的【tcp端口】:address就是对应的端口;State状态是LISTEN说明处于监听状态。

2、查看8000端口的占用情况,可以加 grep 命令:

netstat -nap | grep 端口号

使用示例:

[root@admin]# netstat -nap | grep 8000
tcp        0      0 0.0.0.0:8000            0.0.0.0:*               LISTEN      15821/python3       
tcp        0      0 172.22.237.244:8000     74.120.14.43:33068      ESTABLISHED 15821/python3  

于是可以看到8000处于 LISTEN 状态的,就是python3应用,前面的15821是对应的进程PID号。

lsof 命令使用【根据端口号查询PID进程号】

先yum安装lsof:

yum -y install lsof

根据端口查询PID:

lsof -i:端口号

Linux之①如何查看某个端口号被占用?②如何根据端口号查询哪个服务占用?③如何根据端口号查看进程PID?(根据应用的端口号查看应用的进程号 || 根据应用名查看应用的进程号 || 根据应用端口号查询应用名)

看状态是LISTEN 对应的PID进程号

ps 根据进程名称查询PID进程号以及进程指定信息

根据进程名称查询PID:

ps -ef | grep 进程名称

Linux之①如何查看某个端口号被占用?②如何根据端口号查询哪个服务占用?③如何根据端口号查看进程PID?(根据应用的端口号查看应用的进程号 || 根据应用名查看应用的进程号 || 根据应用端口号查询应用名)

根据进程PID查询对应的端口:

netstat -nap | grep 进程PID

Linux之①如何查看某个端口号被占用?②如何根据端口号查询哪个服务占用?③如何根据端口号查看进程PID?(根据应用的端口号查看应用的进程号 || 根据应用名查看应用的进程号 || 根据应用端口号查询应用名)

 

相关文章:

  • 2021-11-18
  • 2021-11-18
  • 2021-11-18
  • 2021-06-15
  • 2021-12-27
  • 2022-01-21
  • 2021-05-29
猜你喜欢
  • 2022-12-23
  • 2021-11-28
  • 2022-12-23
  • 2021-12-15
  • 2021-11-02
  • 2022-12-23
  • 2021-11-18
相关资源
相似解决方案