笔者也经常在网上查询信息,但发现很多信息都是照搬,内容甚至有错误,可用性很低.笔者就认为如果要分享就应该把遇到的问题真实的分享出来,让更多同路人少走弯路.节约时间.
觉得这篇文章有帮助的同学可以点个赞!将真有用的信息传递给更多人!
目录
Linux磁盘/硬盘测速,测试顺序读写,测试4K性能
本文参考文章http://www.caotama.com/1795792.html
测速命令dd
命令简介
此处可参考https://www.cnblogs.com/sylar5/p/6649009.html
参数说明
-
if=/dev/zero不产生IO,因此可以用来测试纯写速度;
-
if=/dev/zero(产生字符)不产生IO,因此可以用来测试纯写速度;
-
同理of=/dev/null(回收站、无底洞)不产生IO,可以用来测试纯读速度;
-
将/tmp/test拷贝到/var则同时测试了读写速度;
-
bs是每次读或写的大小,即一个块的大小,count是读写块的数量。
查看硬盘分区挂载信息
lsblk -f
比如此时测试sdb硬盘下sdb1分区的读写速度,进入到对应分区的挂载目录,然后执行测试命令
cd /mnt/pve/HD1T
比如测试此分区下速度,
模拟写入128M的小文件,测试其4K写性能.
按顺序写入,每次写入文件大小为32k,写入4000次
dd bs=32k count=4k if=/dev/zero of=test oflag=dsync
模拟一次性读取一个4GB的文件,测试其读取速度.
dd if=/dev/sdc of=/dev/null bs=10240k count=400 iflag=direct
/dev/sdc是实际的物理硬盘.
bs=10240k count=400 循环400次 每次 10240k
模拟读取128M的小文件,测试其4K读性能.
dd if=/dev/sdc of=/dev/null bs=32k count=4000 iflag=direct
/dev/sdc是实际的物理硬盘.
bs=32k count=4000循环4000次 每次 32k
模拟一次性写入一个4GB的文件,测试其写入速度.
dd bs=1024k count=4096 if=/dev/zero of=test conv=fdatasync
4096*1024k=4Gb,conv=fdatasync执行后一次性写入