• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Linux 查看端口的占用情况并找出并杀死占用进程的方法

    1 lsof查看端口的占用情况

    1.1 命令使用示例

    # 命令为 lsof -i
    [root@onepiece ~]# lsof -i
    # 将会显示 命令 + 进程ID + 进程所属用户, 以及监听的协议、状态等信息
    COMMAND  PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
    dhclient 728 root 6u IPv4 11262  0t0 UDP *:bootpc
    ntpd  839 ntp 16u IPv4 13671  0t0 UDP *:ntp
    ntpd  839 ntp 18u IPv4 13677  0t0 UDP localhost:ntp

    •注意: 若提示无此命令, 则需要安装, 命令如下:

    [root@onepiece ~]# lsof -i
    -bash: lsof: command not found
    [root@onepiece ~]# yum install -y lsof
    ......
    Installed:
     lsof.x86_64 0:4.87-6.el7
    Complete!
    # 出现上述的 "Complete!",说明安装成功。

    1.2 查看某一端口的占用情况

    # 比如查看80端口的占用情况,命令为:

    [root@onepiece ~]# lsof -i:22
    COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
    sshd 3187 root 3u IPv4 16278  0t0 TCP *:ssh (LISTEN)
    sshd 9528 root 3u IPv4 4436480  0t0 TCP onepiece:ssh->120.253.xx.xx:30214 (ESTABLISHED)

    这里显示出22号端口正被sshd所使用, 状态是LISTEN(监听).

    1.3 杀死某个端口的所有进程

    不建议通过 kill 的方式解决端口冲突问题!

    某些极少的情况下是可以直接杀死进程、释放端口的, 比如某个 Tomcat 进程没有成功退出, 导致重启失败.

    # 命令如下:
    [root@onepiece ~]# killall sshd
    # 这样,所有sshd的进程都会被结束掉 —— 我这里通过ssh远程操作阿里云服务器, 杀死之后将退出连接, 提示如下:
    Connection to 47.52.xx.xx closed by remote host.
    Connection to 47.52.xx.xx closed.
    # 此时需要从阿里云控制台通过终端进入, 并开启sshd服务, 命令如下:
    service sshd start

    这样, 所有与 sshd 的相关进程都会被结束掉 —— 务必慎用.

    2 netstat查看端口占用情况

    2.1 命令使用示例

    # 命令示例如下:
    [root@onepiece ~]# netstat -anp | grep 22
    tcp  0  0 0.0.0.0:22    0.0.0.0:*    LISTEN  9646/sshd
    tcp  0  36 172.31.xx.xx:22  120.253.xx.xx:30307  ESTABLISHED 9649/sshd: root@pts
    unix 2  [ ]   DGRAM     15722 476/dbus-daemon
    unix 3  [ ]   STREAM  CONNECTED  11122 476/dbus-daemon  

    可以看出22端口被9646号进程监听着.

    2.2 查看占用某个端口的进程

    # 命令为fuser:
    [root@onepiece ~]# fuser -v -n tcp 22
          USER  PID ACCESS COMMAND
    22/tcp:    root  9646 F.... sshd
          root  9649 F.... sshd

    2.3 杀死某个端口的占用进程

    [root@onepiece ~]# kill -s 9 9646(进程号)

    说明:

    -9参数表示告诉操作系统直接杀死进程, 无论进程的状态是否可杀死;
    该命令只杀死某个进程, 比 killall 命令相对安全一点.

    参考阅读:

    Linux中如何解除端口占用

    总结

    以上所述是小编给大家介绍的Linux 查看端口的占用情况并找出并杀死占用进程的方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
    如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

    您可能感兴趣的文章:
    • 6种查看Linux进程占用端口号的方法详解
    • 在Linux中查看进程占用的端口号
    • Linux查看端口占用lsof -i:port的方法
    • 查看linux中某个端口(port)是否被占用的方法
    • Linux/window下怎样查看某个端口被哪个程序/进程占用
    • Linux下查看端口占用进程号,程序名的方法
    • LINUX查看端口是否被占用过程解析
    上一篇:详解Linux ln 命令
    下一篇:shell脚本实现ftp上传下载文件功能
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Linux 查看端口的占用情况并找出并杀死占用进程的方法 Linux,查看,端口,的,占用,