Awesome
disktest
硬盘IO测试 (Disk IO Test)
功能
- 使用
winsat
测试 - 使用
dd
测试 - 使用
fio
测试 - 支持双语输出,以
-l
指定zh
或en
可指定输出的语言,未指定时默认使用中文输出 - 支持指定测试方式,以
-m
指定dd
或fio
指定测试方式,未指定时默认使用dd
进行测试 - 支持单/多盘IO测试,以
-d
指定single
或multi
可指定是否测试多盘,未指定时默认仅测试单盘/root
或C:
路径 - 支持指定路径IO测试,以
-p
指定路径 - 全平台编译支持
注意:默认不自动安装fio
组件,如需使用请自行安装后再使用本项目,如apt update && apt install fio -y
不使用sysbench
进行硬盘IO测试,因为默认设置下fio
测试效果比sysbench
测试更优,且fio
的维护者比sysbench
的维护者更活跃。
TODO
- 正式测试前检测当前路径挂载盘剩余空间是否足够生成测试文件
- fio测试在WIN系统中匹配自动下载exe文件调用
- 优化测试失败时的报错和输出
使用
下载、安装、更新
curl https://raw.githubusercontent.com/oneclickvirt/disktest/main/disktest_install.sh -sSf | bash
或
curl https://cdn.spiritlhl.net/https://raw.githubusercontent.com/oneclickvirt/disktest/main/disktest_install.sh -sSf | bash
使用
disktest
或
./disktest
进行测试
Usage: disktest [options]
-d string
Enable multi disk check parameter (single or multi, default is single)
-h Show help information
-l string
Language parameter (en or zh)
-log
Enable logging
-m string
Specific Test Method (dd or fio)
-p string
Specific Test Disk Path (default is /root or C:)
-v Show version
有环境依赖,Linux/Unix相关系统请确保本地至少安装有dd
或fio
工具其中之一,更多架构请查看 https://github.com/oneclickvirt/disktest/releases/tag/output
dd测试:
fio测试:
winsat测试:
卸载
rm -rf /root/disktest
rm -rf /usr/bin/disktest
在Golang中使用
go get github.com/oneclickvirt/disktest@latest