不同的查看端口占用的方法,应用场景有所不同
- 一、查询某个端口是否被占用?
- lsof -i:端口号
- lsof -i:协议 查看某个协议的占用情况
- netstat -tlnp|grep 端口号
- ss -tlnp|grep 端口号
- fuser 端口号/协议
- ls -l /proc/$(lsof -t -i:端口号)|grep exe
- 二、确认指定进程号是运行了什么文件
- ps -ef|grep 进程号
一、查询某个端口是否被占用?
lsof -i:端口号
例如:lsof -i:22 下图中查询到了结果,说明22端口是有被占用的,占用的命令是第1列 sshd
lsof -i:协议 查看某个协议的占用情况
可以通过lsof -i:ssh
netstat -tlnp|grep 端口号
netstat -tlnp|grep 22
可以看到网络端口监听情况,:22的是进程号6246的sshd应用占用了
ss -tlnp|grep 端口号
ss -tlnp|grep 22
fuser 端口号/协议
ls -l /proc/$(lsof -t -i:端口号)|grep exe
ls -l /proc/$(lsof -t -i:22)grep exe
二、确认指定进程号是运行了什么文件
ps命令,查看进程信息
ps -ef|grep 进程号
ps可以有多个参数组合来查询。都行。
ps -elf|grep 6246
ps -ef|grep 6246
ps aux|grep 6246
通过第一章的命令可以确定22端口是进程6246占用了,具体6246进程运行的是什么程序,通过下面截图示例,可以看到示例中22端口运行的是/usr/sbin/sshd
如果要再继续看的话,就是
ll /usr/sbin/sshd 查看文件属性