Linux监控命令图文详述


分享很全的Linux监控命令,图文详述,应有尽有。

1.1 top

1.1.1 命令说明

Top 命令能够实时监控系统的运行状态,并且可以按照cpu、内存和执行时间进行排序

实用的top命令

为什么 Linux 的 htop 命令完胜 top 命令

Ubuntu下最强大的进程监视器htop使用

CentOS 6.5中安装htop进程管理监控工具

top命令引起系统负载升高 

1.1.2 参数说明

  • 命令行启动参数:
  • 用法: top -hv | -bcisSHM -d delay -n iterations [-u user | -U user] -p pid [,pid ...]
  • -b : 批次模式运行。通常用作来将top的输出的结果传送给其他程式或储存成文件
  • -c : 显示执行任务的命令行
  • -d : 设定延迟时间
  • -h : 帮助
  • -H : 显示线程。当这个设定开启时,将显示所有进程产生的线程
  • -i : 显示空闲的进程
  • -n : 执行次数。一般与-b搭配使用
  • -u : 监控指定用户相关进程
  • -U : 监控指定用户相关进程
  • -p : 监控指定的进程。当监控多个进程时,进程ID以逗号分隔。这个选项只能在命令行下使用
  • -s : 安全模式操作
  • -S : 累计时间模式
  • -v : 显示top版本,然后退出。
  • -M : 自动显示内存单位(k/M/G)

1.全局命令

  • 回车、空格 : 刷新显示信息
  • ?、h : 帮助
  • = : 移除所有任务显示的限制
  • A : 交替显示模式切换
  • B : 粗体显示切换
  • d、s : 更改界面刷新时间间隔
  • G : 选择其它窗口/栏位组
  • I : Irix或Solaris模式切换
  • u、U : 监控指定用户相关进程
  • k : 结束进程
  • q : 退出top
  • r : 重新设定进程的nice值
  • W : 存储当前设定
  • Z : 改变颜色模板

2.摘要区命令

  • l : 平均负载及系统运行时间显示开关
  • m : 内存及交换空间使用率显示开关
  • t : 当前任务及CPU状态显示开关

1 : 汇总显示CPU状态或分开显示每个CPU状态

1.任务区命令

  • 外观样式
  • b : 黑体/反色显示高亮的行/列。控制x和y交互命令的显示样式
  • x : 高亮显示排序的列
  • y : 高亮显示正在运行的任务
  • z : 彩色/黑白显示。
  • 显示内容
  • c : 任务执行的命令行或进程名称
  • f、o : 增加和移除进程信息栏位及调整进程信息栏位显示顺序
  • H : 显示线程
  • S : 时间累计模式
  • u : 监控指定用户相关进程
  • 任务显示的数量
  • i : 显示空闲的进程
  • n或# : 设置任务显示最大数量
  • 任务排序(shift+f)
  • M : 按内存使用率排序
  • N : 按PID排序
  • P : 按CPU使用率排序
  • T : 按Time+排序
  • < : 按当前排序栏位左边相邻栏位排序
  • > : 按当前排序栏位右边相邻栏位排序
  • F 或 O : 选择排序栏位
  • R : 反向排序

 

1.1.3  结果说明

1.2 free

1.2.1  命令说明

Free命令是监控系统内存最常用的命令

1.2.2.参数说明

-m:以M为单位查看内存使用情况(默认为kb)

-b:以字节为单位查看内存使用情况

-s:可以在指定时间段内不简单监控内存的使用情况

 

1.2.3 结果说明

 

  • total:总计物理内存的大小。
  • Used:已使用多大。
  • Free:可用有多少。
  • shared:多个进程共享的内存总额。
  • buffers/cached:磁盘缓存的大小。

 

1.3 vmstat

1.1.1命令说明

可以监控操作系统的进程状态、内存、虚拟内存、磁盘IO、上下文、CPU的信息。

1.1.2参数说明

vmstat [-a] [-n] [-S unit] [delay [ count]]

  • -a:显示活跃和非活跃内存
  • -m:显示slabinfo
  • -n:只在开始时显示一次各字段名称。
  • -s:显示内存相关统计信息及多种系统活动数量。
  • delay:刷新时间间隔。如果不指定,只显示一条结果。
  • count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。
  • -d:显示各个磁盘相关统计信息。
  • -S:使用指定单位显示。参数有 k 、K 、m 、M ,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes)
  • -V:显示vmstat版本信息。
  • -p:显示指定磁盘分区统计信息
  • -D:显示磁盘总体信息

1.1.3 结果说明

  • Procs
  • R:等待被执行的进程数,即表示运行和等待CPU时间片的进程数
  • B:排队的进程数,即等待资源的进程数
  • Memory
  • Swap : 虚拟内存,切换到虚拟内存的内存大小
  • Free: 空闲的物理内存大小
  • Buff: 缓冲区大小
  • Cache: 缓存大小
  • Swap
  • Si:磁盘写入虚拟内存,即由内存进入到虚拟内存的大小。
  • So:虚拟内存写入磁盘,即由虚拟内存进入到磁盘的大小。

Io

  • Bi:由块设备读入的数据总量,读磁盘
  • Bo:由块设备写入的数据总量,写磁盘
  • System
  • In: 每秒设备中断数
  • Cs:每秒上下文切换的次数
  • Cpu
  • Us:用户进程消耗cpu百分比
  • Sy:内核进程消耗cpu百分比
  • Id:cpu处于空闲状态的时间百分比
  • Wa:Io等待cpu所占时间的百分比

 

1.4 iostat

1.4.1命令说明

Iostat是对系统磁盘IO操作进行监控,它的输出主要显示磁盘的读写操作的统计信息。同时给出cpu的使用情况

1.4.2参数说明

iostat [ -c | -d ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ device [ ... ] | ALL ] [ -p [ device | ALL ] ] [ interval [ count ] ]
各选项以及参数含义如下:

  • -c: 仅显示CPU统计信息.与-d选项互斥.
  • -d :仅显示磁盘统计信息.与-c选项互斥.
  • -k :以K为单位显示每秒的磁盘请求数,默认单位块.
  • -p :device | ALL
    与-x选项互斥,用于显示块设备及系统分区的统计信息.也可以在-p后指定一个设备名,如:
    # iostat -p had

或显示所有设备
# iostat -p ALL

  • -t :在输出数据时,打印搜集数据的时间.
  • -V :打印版本号和帮助信息.
  • -x  device  输出指定要统计的磁盘设备名称,默认为所有磁盘设备.
  • - interval :指两次统计间隔时间
  • -  count :按照interval 指定的时间间隔统计的次数

使用vmstat和iostat命令进行Linux性能监控 

RH442攻略之iostat

Linux 下使用iostat命令生成CPU和I/O的统计报告

安装iostat和mpstat工具

Linux iostat命令输出简要说明

Linux iostat命令

Linux iostat命令实例详解

1.4.3结果说明

Iostat的简单应用

Iostat磁盘监控

  • rrqm/s:每秒进行 merge 的读操作数目,即 delta(rmerge)/s 。
  • wrqm/s:每秒进行 merge 的写操作数目,即 delta(wmerge)/s 。
  • r/s:每秒完成的读 I/O 设备次数,即 delta(rio)/s 。
  • w/s: 每秒完成的写 I/O 设备次数,即 delta(wio)/s 。
  • rsec/s:每秒读扇区数,即 delta(rsect)/s。
  • wsec/s:每秒写扇区数,即 delta(wsect)/s
  • rkB/s:每秒读K字节数,是 rsect/s 的一半,因为每扇区大小为512字节。
  • wkB/s:每秒写K字节数,是 wsect/s 的一半
  • avgrq-sz:平均每次设备I/O操作的数据大小 (扇区),即                                                              delta(rsect+wsect)/delta(rio+wio) 。
  • avgqu-sz:平均I/O队列长度,即 delta(aveq)/s/1000 (因为aveq的单位为毫秒)。
  • Await:平均每次设备I/O操作的等待时间 (毫秒),即  delta(ruse+wuse)/delta(rio+wio) 。
  • Svctm:平均每次设备I/O操作的服务时间 (毫秒),即 delta(use)/delta(rio+wio) 。
  • %util:一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的,
    即 delta(use)/s/1000 (因为use的单位为毫秒) 。

Iostat  cpu 监控

  • %usr:用户进程消耗的CPU时间百分比。
  • %nice:  运行正常进程消耗的CPU时间百分比。
  • %system:系统进程消耗的CPU时间百分比。
  • %iowait:I/O等待所占CPU时间百分比。
  • %steal:在内存紧张环境下,pagein强制对不同的页面进行的steal操作。
  • %idle:CPU空闲状���的时间百分比。 

更多详情见请继续阅读下一页的精彩内容:

  • 1
  • 2
  • 3
  • 下一页

相关内容