linux查看磁盘IO情况

Linux系统出现了性能问题,一般我们可以通过top.iostat,vmstat等命令来查看初步定位问题。

1. top

top - 16:50:36 up 1 day,  4:59,  2 users,  load average: 0.06, 0.08, 0.08
Tasks: 159 total,   1 running, 158 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.2%us,  0.1%sy,  0.0%ni, 99.8%id,  29.6%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  16332240k total,  5605800k used, 10726440k free,   377964k buffers
Swap:  1048572k total,    10144k used,  1038428k free,  2244152k cached

查看29.6% wa

IO等待所占用的CPU时间的百分比,高过30%时IO压力高

2. iostat -x -k 1 3

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.89    0.00    0.85   28.30    0.06   69.90
Device:   rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
vda       1.12    31.85    2.97    3.84   102.34   142.36    71.92     4.89  716.53  59.40  40.42
vdb       0.00    16.62    0.26    1.77    32.08    73.16   103.79     0.15   73.91  46.55   9.44
scd0      0.00     0.00    0.00    0.00     0.00     0.00     8.00     0.00    0.69   0.69   0.00
dm-0      0.00     0.00    1.13   35.38    89.29   141.49    12.64    35.61  975.29  11.34  41.42
dm-1      0.00     0.00    0.01    0.08     0.04     0.31     8.00    16.55 188972.09 1380.98  12.09

rrqm/s:每秒进行merge的读操作数目。即delta(rmerge)/s 
wrqm/s:每秒进行merge的写操作数目。即delta(wmerge)/s 
r/s:每秒完成的读I/O设备次数。即delta(rio)/s 
w/s:每秒完成的写I/0设备次数。即delta(wio)/s 
rsec/s:每秒读扇区数。即delta(rsect)/s 
wsec/s:每秒写扇区数。即delta(wsect)/s 
rKB/s:每秒读K字节数。是rsec/s的一半,因为每扇区大小为512字节 
wKB/s:每秒写K字节数。是wsec/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(usr)/s/1000(因为use的单位为毫秒)

如果%util接近100%,说明产生的I/O请求太多,I/O系统已经满负载,该磁盘可能存在瓶颈。

比较重要的参数 
%util:一秒中有百分之多少的时间用于I/O操作,或者说一秒中有多少时间I/O队列是非空的 
svctm:平均每次设备I/O操作的服务时间 
await:平均每次设备I/O操作的等待时间 
avgqu-sz:平均I/O队列长度

如果%util接近100%,表明I/O请求太多,I/O系统已经满负荷,磁盘可能存在瓶颈,一般%util大于70%,I/O压力就比较大,读取速度有较多的wait。 
await的大小一般取决于服务时间(svctm)以及I/O队列的长度和I/O请求的发出模式。如果svctm比较接近await,说明I/O几乎没有等待时间;如果 await远大于svctm,说明I/O队列太长,应用得到的响应时间变慢。

3. vmstat

[[email protected] crontab]# vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0  10144 10689636 379488 2245436    0    0    34    54   12   73  1  1 70 28  0

vmstat查看查看b参数(等待资源的进程数)和wa参数(I/O等待所占用的CPU时间的百分比,高过30%时I/O压力高)

4. iotop

时间: 2024-09-30 11:28:03

linux查看磁盘IO情况的相关文章

linux查看磁盘使用情况

df -h linux查看磁盘使用情况,布布扣,bubuko.com

Linux查看磁盘使用情况命令

一.df -lh 命令 df 是来自于coreutils 软件包,系统安装时,就自带的:我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置: [[email protected] ~]# df -l 文件系统                 容量       已用       可用    已用% 挂载点 /dev/sda3              4956316   3565088   1135396 76% / tmpfs                   241320    

linux查看磁盘io的几种方法

怎样才能快速的定位到并发高是由于磁盘io开销大呢?可以通过三种方式: 第一种:用 top 命令 中的cpu 信息观察 Top可以看到的cpu信息有: Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa, 0.0% hi, 0.0% si 具体的解释如下: Tasks: 29 total 进程总数 1 running 正在运

Linux查看磁盘io开销的几种方法

怎样才能快速的定位到并发高是由于磁盘io开销大呢? 可以通过三种方式: 第一种:用 top 命令 中的cpu 信息观察 Top可以看到的cpu信息有: 使用方法如下图: 具体的解释如下: Tasks: 29 total 进程总数 1 running 正在运行的进程数 28 sleeping 睡眠的进程数 0 stopped 停止的进程数 0 zombie 僵尸进程数 Cpu(s): 0.3% us 用户空间占用CPU百分比 1.0% sy 内核空间占用CPU百分比 0.0% ni 用户进程空间内

linux 查看磁盘占用情况

查看"/usr/local/"路径下,所有文件大小总和.只列出总和,不显示该路径下各子文件的大小. du -sh /usr/local/ 结果显示如下图: 如果要详细显示出各子文件的大小情况,去掉"s"选项即可,如下: du -h /usr/local/ 查看各分区占用情况 df -h 结果显示如下图:

linux 下查看磁盘IO状态

from:脚本之家 linux 查看磁盘IO状态操作 作者:佚名 字体:[增加 减小] 来源:互联网 时间:11-15 15:13:44我要评论 Linux系统出现了性能问题,一般我们可以通过top.iostat,vmstat等命令来查看初步定位问题.其中iostat可以给我们提供丰富的IO状态数据 Linux系统出现了性能问题,一般我们可以通过top.iostat,vmstat等命令来查看初步定位问题.其中iostat可以给我们提供丰富的IO状态数据. www.jb51.net iostat结

linux 查看磁盘读写:iotop

iotop命令用来动态地查看磁盘IO情况,用法如下: 安装iotop命令 [root@mysql ~]# yum install iotop -y [root@mysql ~]# iotop Total DISK READ : 0.00 B/s | Total DISK WRITE : 0.00 B/s Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 0.00 B/s TID PRIO USER DISK READ DISK WRITE SWAPI

Linux服务器用iotop命令分析服务器磁盘IO情况

Linux下的IO统计工具如iostat, nmon等大多数是只能统计到per设备的读写情况, 如果你想知道每个进程是如何使用IO的就比较麻烦.如果会systemtap, 或者blktrace这些事情难不到大家, 但是没专用工具总不是很舒服的. 幸运的是Linux 2.6.20内核以后提供了基于每个进程的IO记账功能,所以就有了类似iotop这样方便的工具.可以通过iotop工具进行分析,查看哪个进程占有读写比较高. 官网地址: http://guichaz.free.fr/iotop/ Iot

Linux 查看磁盘容量、查找大文件、查找大目录

Linux 查看磁盘容量.查找大文件.查找大目录 磁盘统计 查看磁盘使用情况 df -h 文件统计 查找/home 目录下大于800M的文件 find /home -type f -size +800M 查找/home 目录下大于800M的文件,并且使用ls -l 命令输出详细信息 find /home -type f -size +800M -print0|xargs -0 ls -l 查找/home 目录下大约800M的文件,并且使用du -h 命令输出文件的大小 find /home -t