dd命令磁盘测试指南
基本命令格式
dd if=输入文件 of=输出文件 bs=字节数 count=个数
参数说明
| 参数 | 说明 | 示例值 |
|---|---|---|
if |
输入文件 | /dev/zero |
of |
输出文件 | /tmp/test |
bs |
块大小 | 1M, 4k |
count |
块数量 | 1024, 100000 |
oflag |
输出标志 | direct, sync |
测试步骤流程
1. 准备测试环境
cd /tmp/
touch test
2. 基础写入测试
# 生成1GB测试文件(1M × 1024 = 1GB)
dd if=/dev/zero of=/tmp/test bs=1M count=1024
3. 硬盘性能测试
# 使用4k小文件测试硬盘写速度
dd if=/dev/zero of=/tmp/test bs=4k count=100000
# 跳过内存缓存测试真实硬盘速度
dd if=/dev/zero of=/tmp/test bs=4k count=1000000 oflag=direct
命令详解
/dev/zero 设备说明
- 作用:提供无限的空字符(null)
- 特性:读取操作会持续产生空字符,直到命令终止
- 用途:常用于测试、调试和填充文件
标志参数说明
oflag=direct:跳过内存缓存,直接写入磁盘oflag=sync:跳过HDD缓存- 无标志:测试真实参数下的硬盘写速度
性能测试场景
测试磁盘读能力
time dd if=/dev/zero of=/tmp/test bs=4k
注意:使用 Ctrl+c 终止测试
测试同时读写能力
time dd if=/dev/zero of=/tmp/test bs=4k
说明:同时测试磁盘的读取(从
/dev/zero)和写入(到/tmp/test)能力
注意事项
- 使用
dd命令时需要小心,避免不必要的资源消耗 - 指定
count参数可以限制文件大小 - 测试时注意磁盘空间和系统负载
