杀掉某个进程!怎么查看pid,报错:Address already in use

说在文前,菜鸟一个,如果有说的不对的,还请见谅,望能指出,让我这井底之蛙也能见见世面。

今天分享下一个比较常见的问题,端口被占用。

报错大致类型如下:

 

这里我是zookeeper开启的时候,报了Address已经被使用。其实这个问题还挺常见的,比如我们重复打开Tomcat就可以看到这个报错。

解决方法如下:

最简单的方法:jps看看,然后看看有没有对应的进程,有就直接kill -9 掉就好了

但是如上的方法,一般来说jps你是看不到你想要的东西的,所以要用如下的方法(这里是演示的namenode,它的端口号是8020)

第一:netstat -apn | grep 2181(这里的端口号,替换成你被占用的那个端口号,比如Tomcat是8080,namenode是8020之类的,还有最好用root来使用这些系统级的命令)

然后得到这样的结果:

最后一排其实就pid,然后我们通过kill -9 pid 就可以杀掉对应的进程(例如,kill -9 4438)

但是kill前,我们还是要确定下到底这个哪里开的进程能不能随便杀掉,所以。。。

第二:ps -ef | grep 4438

这样就可以看看你这个进程到底是谁开的,在哪里开的,如下图:

这边显示了两行,每行都是以用户名开头的,第一个就是普通用户开启的namenode进程,第二个是root用户执行的ps -ef | grep 4438这个命令生成的,就好像我们每次jps的时候,就有jps这个进程。

第三:最后一步,其实就是kill -9 强制杀掉就没问题了!!!!

备注kill的批量杀进程用法:kill -9 $(pgrep -f kafka) 可以把所有kafka的进程杀了

 

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值