zoukankan      html  css  js  c++  java
  • 排查线上问题必须掌握的 6 个 Linux 命令

    1、top

    相当于Windows任务管理器

     可以看到,输出结果分两部分,前5行是总览,下面是具体的进程资源占用情况。下面逐行看一下

    第1行

    top - 18:14:58 up 112 days, 1:35, 1 user, load average: 0.00, 0.10, 0.11
    
    依次表示:当前时间、系统已经运行的时间、当前登录的用户数、系统在过去的1分钟,5分钟,15分钟的负载
    
    PS:从这一行我们可以知道以下信息:
    
        当前时间是18:14:58
        系统运行了112天1小时35分钟
        当前有1个用户登录
        在过去1分钟,5分钟,15分钟的负载分别是0.00, 0.10, 0.11
    
    负载超过1,则表示超负荷

    第2行

    Tasks: 225 total, 1 running, 224 sleeping, 0 stopped, 0 zombie
    
    进程信息
    
        total    进程总数
        running   运行中的进程数
        sleeping  睡眠中的进程数
        stopped  停止的进程数
        zombie   僵尸进程数
    
    (PS:从这一行我们可以知道,当前总共225个进程)

    第3行

    Cpu(s): 1.8%us, 0.9%sy, 0.0%ni, 97.1%id, 0.1%wa, 0.0%hi, 0.1%si, 0.0%st
    
    CPU使用情况
    
    us : 用户进程占用CPU百分比
    
    sy : 内核进程占用CPU百分比
    
    ni : 改变过优先级的进程占用CPU百分比
    
    id : 空闲CPU百分比
    
    wa : IO等待的进程占用CPU百分比
    
    hi : 硬中断占用CPU的百分比
    
    si : 软中断占用CPU的百分比
    
    st :

     第4行

    Mem: 32879852k total, 23633040k used, 9246812k free, 311552k buffers
    
    物理内存使用情况
    
        total  总的内存大小
        used  已使用
        free  未使用
        buffers  内核缓冲区   
    
    可用内存 = free + buffers + cached

    第5行

    Swap: 4194300k total, 255104k used, 3939196k free, 10422508k cached

    虚拟内存使用情况

    其余行

     2、free -m

    查看已使用和未使用的内存情况

    Mem  total = used + free
    
    Swap  total = used + free
    
    可用内存 = free + buffers + cached
    
    (-buffers/cache) used内存数 = Mem行中的 used – buffers – cached
    
    (+buffers/cache) free内存数 = Mem行中的 free + buffers + cached

     3、netstat

     要特别关注一下“ESTABLISHED”的数量,如果ESTABLISHED越多,表示建立的连接越多,如果一直居高不下,那么就要引起注意了,因为系统对打开的连接数是有限制的。

    常见应用

    1、查看连接数最多的IP

    netstat -na | grep ESTABLISHED | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c

    2、统计TCP不同状态的连接数

    netstat -na | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 

    4、df -h

    查看文件系统磁盘空间使用情况

     5、du -sh

    查看(计算)文件大小

    还可以这样

    du --max-depth=2 --block-size=M 或者 ll --block-size=M

    故乡明
  • 相关阅读:
    Struts2取值
    Mybatis介绍
    Java开发JDBC连接数据库
    【模板】多项式全家桶_缺斤少两
    【JOI】JOISC2020R1_T1building_构造/ntt
    【CF】codeforces_1301F_Super Jaber_最短路
    【CF】codeforces1301E_前缀和_论如何对CF的机器抱有信心
    poj 2079 Triangle
    poj 1912 A highway and the seven dwarfs
    poj 2482 Stars in Your Window
  • 原文地址:https://www.cnblogs.com/luweiweicode/p/15013883.html
Copyright © 2011-2022 走看看