首先,列出任何监听端口 80 的进程:
使用 kill 命令删除任何监听端口 80 的进程:
或使用 fuser 命令:
关闭端口的三种方法1 杀死进程
2 关闭服务
3 防火墙屏蔽端口
三种方法的简单介绍
1 端口和进程二者紧密相连,一个进程有对应的端口号,所以杀死这个进程也就关掉了端口。
优点: *** 作简单,直接关闭
缺点:进程从新开启,端口号自动又会打开。
2 每一个服务对应很多进程,比如数据库服务等。如果把服务关掉,软件打不开自然端口不会开放。
优点:相比第一种更加严密(建议使用这种)
3 防火墙封锁端口
*** 作方法
1 直接杀死进程:
第一步查看本机所有端口netstat -antup (大概看一看)
( -a 或–all显示所有连线中的Socket
-n 或–numeric 直接使用IP地址,而不通过域名服务器
-p 或–programs 显示正在使用Socket的程序识别码和程序名称
-t 或–tcp 显示TCP 传输协议的连线状况。
-u或–udp 显示UDP传输协议的连线状况。 )
第二步 指定端口使用情况额比如111 lsof -i:111
如果什么都没有就说明端口没开放,如果有会显示进程的pid 继续下一步
第三步 如果显示111的进程号为2323 执行 kill -9 2323
第四步 lsof -i:111 如什么都没有显示 说明已经关闭
2 关闭服务
第一步 查看本机所有的端口开放情况
nmap localhost
第二步 根据第一步看到已经开放的端口对应服务的名称 比如 rpcbind 111
执行 /etc/init.d/./rpcbind 会提示关闭
第三步lsof -i:111 查看是否关闭
如果服务名称找不到运用下面方法 (
列出所有处于监听状态的socket:netstat -l
rpm -qf /sbin/rpc.statd
ls /etc/init.d/nfs*
/etc/init.d/nfslock status
nmap 127.0.0.1)
一、常用命令:
1,lsof -i端口号
2,netstat -tunlp|grep 端口号
这两个命令都可以查看端口被什么进程占用。
二、lsof -i 需要 root 用户的权限来执行,如下图:
三、netstat命令
netstat -tunlp 用于显示 tcp,udp 的端口和进程等相关情况。
netstat 查看端口占用语法格式:
netstat -tunlp | grep 端口号
扩展资料
一、更多 lsof 的命令扩展
1、lsof -i:8080:查看8080端口占用
2、lsof abc.txt:显示开启文件abc.txt的进程
3、lsof -c abc:显示abc进程现在打开的文件
4、lsof -c -p 1234:列出进程号为1234的进程所打开的文件
5、lsof -g gid:显示归属gid的进程情况
6、lsof +d /usr/local/:显示目录下被进程开启的文件
7、lsof +D /usr/local/:同上,但是会搜索目录下的目录,时间较长
8、lsof -d 4:显示使用fd为4的进程
9、lsof -i -U:显示所有打开的端口和UNIX domain文件
二、更多netstat命令
1、netstat -ntlp //查看当前所有tcp端口
2、netstat -ntulp | grep 80 //查看所有80端口使用情况
3、netstat -ntulp | grep 3306 //查看所有3306端口使用情况
三、关闭端口
1、在查到端口占用的进程后,如果你要杀掉对应的进程可以使用 kill 命令:
kill -9 PID
2、如上实例,我们看到 8000 端口对应的 PID 为 26993,使用以下命令杀死进程:
kill -9 26993
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)