在Linux系统中,可以使用多种命令来测试硬盘的读写速度。
一、基础命令及原理
dd if = /dev/zero of = /testfile bs = 1M count = 1024 conv = fdatasync
if
表示输入文件(/dev/zero
是一个特殊的设备文件,能不断提供0值数据),of
是输出文件(这里是在根目录下创建/testfile
用于写入测试),bs
是块大小(这里设置为1M),count
是要复制的块数量(1024个块,总共写入1G数据),conv = fdatasync
表示在写入完成后将数据同步到磁盘。dd if = /dev/zero of = /testfile bs = 1M count = 1024
。dd if = /testfile of = /dev/null bs = 1M
。hdparm -Tt /dev/sda
(假设/dev/sda
是要测试的硬盘设备)。其中-T
测试缓存读取速度,-t
测试设备的读取速度。fio -name = write_test -filename = /testfile -rw = write -bs = 4k -size = 1G -numjobs = 1
-name
是任务名称,-filename
是测试文件,-rw
表示读写操作(这里是写入),-bs
是块大小为4k,-size
是测试文件大小为1G,-numjobs
是并发任务数量为1。dd if = /dev/zero of = /testfile bs = 1M count = 1024
。fio -name = read_test -filename = /testfile -rw = read -bs = 4k -size = 1G -numjobs = 1
。二、优势
三、应用场景
领取专属 10元无门槛券
手把手带您无忧上云