大家在操作linux系统,或者在安装linux软件的时候,应该会经常遇到端口被其他进程占用的问题,下面就列举一下怎么查看linux端口被占用的方法。
lsof命令
lsof(list open files)命令可以列出当前系统中打开的所有文件,包括网络端口。可以使用lsof命令查看某个端口被哪个进程占用。
具体的命令为:sudo lsof -i :端口号,其中端口号为需要查询的端口号。
netstat命令
使用netstat命令:netstat命令可以显示网络连接、路由表和网络接口信息等。可以使用netstat命令查看某个端口被哪个进程占用。如果是centos是最小化安装,默认就没有这个命令,需要使用yum -y install net-tools进行安装。
具体的命令为:sudo netstat -tlnp | grep 端口号,其中端口号为需要查询的端口号。
ss命令
ss命令可以列出当前系统中打开的套接字(socket)信息,包括网络端口。可以使用ss命令查看某个端口被哪个进程占用.
具体的命令为:sudo ss -tlnp | grep 端口号,其中端口号为需要查询的端口号。
fuser命令
fuser命令可以查看某个文件或目录被哪个进程占用。对于网络端口,也可以使用fuser命令进行查询,
具体的命令为:sudo fuser 端口号/tcp,其中端口号为需要查询的端口号。
ps命令
ps命令可以列出当前系统中正在运行的进程信息。可以使用ps命令结合grep命令来查找某个进程,然后再查看该进程打开的网络端口。
具体的命令为:sudo ps -ef | grep 进程名,其中进程名为需要查询的进程名。
proc文件系统
使用/proc文件系统:在Linux系统中,每个进程都有一个对应的目录,存储了该进程的相关信息。可以使用/proc文件系统来查看某个端口被哪个进程占用。
具体的命令为:sudo ls -l /proc/$(sudo lsof -t -i:端口号) | grep exe,其中端口号为需要查询的端口号。