面试时候经常问到:
linux中如何查看某个端口是否被占用?
如何根据端口号查询被哪个服务占用了?
如何根据端口号查看进程PID?
使用netstat -nultp命令查询本机所有端口占用情况
主要查看tcp对应的,address就是对应的端口,State状态是LISTEN说明处于监听状态。
如果我们想查看8000端口的占用情况,可以加 grep 命令
netstat -nap | grep 端口号使用示例
[root@yoyo]# 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 命令使用先yum安装lsof
yum -y install lsof根据端口查询PID
lsof -i:端口号看状态是LISTEN 对应的PID进程号
ps 根据进程名称查询PID根据进程名称查询PID
ps -ef | grep 进程名称根据进程PID查询对应的端口
netstat -nap | grep 进程PID