如何查看linux服务器io读写情况

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何查看linux服务器io读写情况相关的知识,希望对你有一定的参考价值。

首先 、用top命令查看
top - 16:15:05 up 6 days, 6:25, 2 users, load average: 1.45, 1.77, 2.14
Tasks: 147 total, 1 running, 146 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.2% us, 0.2% sy, 0.0% ni, 86.9% id, 12.6% wa, 0.0% hi, 0.0% si
Mem: 4037872k total, 4003648k used, 34224k free, 5512k buffers
Swap: 7164948k total, 629192k used, 6535756k free, 3511184k cached
查看12.6% wa
IO等待所占用的CPU时间的百分比,高过30%时IO压力高
其次、 用iostat -x 1 10
avg-cpu: %user %nice %sys %iowait %idle
0.00 0.00 0.25 33.46 66.29
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sdb 0.00 1122 17.00 9.00 192.00 9216.00 96.00 4608.00 123.79 137.23 1033.43 13.17 100.10
sdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

查看%util 100.10 %idle 66.29
如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。
idle小于70% IO压力就较大了,一般读取速度有较多的wait.
同时可以结合vmstat 查看查看b参数(等待资源的进程数)
vmstat -1
如果你想对硬盘做一个IO负荷的压力测试可以用如下命令
time dd if=/dev/zero bs=1M count=2048 of=direct_2G
此命令为在当前目录下新建一个2G的文件
我们在新建文件夹的同时来测试IO的负荷情况
参考技术A 测试硬盘读写速度
dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file dd if=/root/1Gb.file bs=64k | dd of=/dev/null
dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000
dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file

linux怎么计算io读写速度?

根据/proc/diskstats这个文件的信息可以计算吗?vmstat,iostat等软件是怎么计算的?
我是想实时监视硬盘读写情况。cpu,内存,网络上传下载都搞定了,就差硬盘读写了。因为是使用QLabel来显示,所以最好知道怎么计算,不想调用iostat来获取数据。

Linux下测试磁盘的读写IO速度 ,使用hdparm命令,下面是测试方法:

# hdparm -Tt /dev/sda
/dev/sda:
 Timing cached reads: 6676 MB in 2.00 seconds = 3340.18 MB/sec
 Timing buffered disk reads: 218 MB in 3.11 seconds = 70.11 MB/sec
#可以看到,2秒钟读取了6676MB的缓存,约合3340.18 MB/sec;
#在3.11秒中读取了218MB磁盘(物理读),读取速度约合70.11 MB/sec;
参考技术A 推荐你用nmon,功能很全很强大,而且是开源的。本回答被提问者采纳 参考技术B 利用time命令就可以啊(bash shell)

以上是关于如何查看linux服务器io读写情况的主要内容,如果未能解决你的问题,请参考以下文章

如何监测Linux进程的实时IO读写情况

如何查看Linux下进程的IO活动状况 00 Hey,Linux

[svc]Linux vmstat命令实战详解

LINUX 查看当前系统的内存使用情况 vmstat

LINUX 查看当前系统的内存使用情况 vmstat

linux 系统资源查看命令