linux测试硬盘速度(转)

admin2年前他山之石178

在Linux下,一条简单的名利'dd'就可以帮我们到达这个目的。

以下内容是关于如何使用‘dd’命令来测试USB硬盘的读写速度。


1. 测试写速度:

$ sudo mount /dev/sdd /mnt
$ cd /mnt
$ dd if=/dev/zero of=./write_file bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 11.266 s, 95.3 MB/s

dd 命令从输入文件(if=/dev/zero)读入空字符,然后以1M大小的块通过1024次总共1GB数据写入输出文件(/mnt/write_file)。我们可以看到写速度是95.3 MB/s。


2. 测试读速度:

dd if=./write_file of=/dev/null bs=4k
262144+0 records in
262144+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.342886 s, 3.1 GB/s

如果我们做完写速度测试,就进行读速度测试就会得到上面的假象,以为读速度超快可以达到3.1GB/s。这是因为刚进行完写操作,数据还存在缓存(cache) 里,因此读操作时直接从cache读而不是从硬盘里读取的。

因此在测试读速度时,我们需要先清一下缓存cache:

$ sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"

清完缓存cache后,再做一次读测试就可以得到真正的读速度了。

$ dd if=./write_file of=/dev/null bs=4k
262144+0 records in
262144+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 9.54418 s, 113 MB/s

实际读速度是113 MB/s

注:/dev/null 代表空设备文件,它等价于一个仅仅写文件,全部写入它的内容都会永远丢失。


相关文章

Docker PHP安装扩展步骤详解(转)

前言此篇,主要是演示docker-php-source , docker-php-ext-install ,docker-php-enable-docker-configure 这四个命令到底是用来干...

两点之间距离 PHP、JS版(美团技术博客算法)

/**  * 计算两点之间距离 有少许可以忽略的误差  * 两点不能差距太远  * 适用于 附近商家 &...

射线法判断点是否在多边形内(转)

/**  * @description 射线法判断点是否在多边形内部  * @param {Object} p ...

dockerfile详解(转)

什么是dockerfile?Dockerfile是一个包含用于组合映像的命令的文本文档。可以使用在命令行中调用任何命令。 Docker通过读取Dockerfile中的指令自动生成映像。docker b...

地理空间距离计算优化_附近商家(转自美团技术博客)

1 地理空间距离计算面临的挑战打开美团app,不管是筛选团购还是筛选商家,默认的排序项都是“离我最近”或者“智能排序”(如下图所示)。手机app示意不管是“离我最近”还是“智能排序”,都涉及到计算用户...

如何用tun2socks更优雅的实现Linux全局代理(转)

tun2sockstun2socks分支有相当多,如下go-tun2socks(Golang版本)badvpn-tun2socks(C版本 内存占用小)安装badvpn安装很简单,官方有binary源...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。