有时启动应用时会发现端口已经被占用,或者是感觉有些端口自己没有使用却发现是打开的。这时我们希望知道是哪个应用/进程在使用该端口。
CentOS下可以用netstat或者lsof查看,Windows下也可以用netstat查看,不过参数会不同
Linux:
netstat -nap #会列出所有正在使用的端口及关联的进程/应用
lsof -i :portnumber #portnumber要用具体的端口号代替,可以直接列出该端口听使用进程/应用
一、检查端口被哪个进程占用
netstat -lnp | grep 80 #80可换为需要的端口,如:8080
这个命令可以查看到80端口正在被哪个进程使用。如下图,进程号为 1705 。
二、查看进程的详细信息
ps 1705 查看相应进程号的程序详细路径。如下图。
三、杀掉进程
kill -9 1705 #杀掉编号为1705的进程(请根据实际情况输入)
四、重启Tomcat
service httpd start #重新启动apache