zoukankan      html  css  js  c++  java
  • 排查线上问题常用的几个Linux命令

    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

    虚拟内存使用情况

    其余行

    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

    iostat

    格式:iostat [ 选项 ] [ <时间间隔> [ <次数> ]]

    示例:

    iostat -d

    iostat -d 2 2

    iostat -x 1 2

    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]}' 

    df -h

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

    du -sh

    查看(计算)文件大小

    还可以这样

    du --max-depth=2 --block-size=M

    或者

    ll --block-size=M

    其它相关

    Linux系统打开文件最大数量限制》 

  • 相关阅读:
    第四章:(2)原理之 Dubbo 框架设计
    大三学习进度29
    大三学习进度27
    大三学习进度31
    大三学习进度24
    大三学习进度29
    大三学习进度26
    大三学习进度28
    大三学习进度25
    大三学习进度32
  • 原文地址:https://www.cnblogs.com/cjsblog/p/9562380.html
Copyright © 2011-2022 走看看