Skip to content

oneclickvirt/disktest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

disktest

Hits Build and Release

硬盘IO测试 (Disk IO Test)

功能

  • 使用winsat测试
  • 使用dd测试
  • 使用fio测试
  • 支持双语输出,以-l指定zhen可指定输出的语言,未指定时默认使用中文输出
  • 支持指定测试方式,以-m指定ddfio指定测试方式,未指定时默认使用dd进行测试
  • 支持单/多盘IO测试,以-d指定singlemulti可指定是否测试多盘,未指定时默认仅测试单盘/rootC:路径
  • 支持指定路径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相关系统请确保本地至少安装有ddfio工具其中之一,更多架构请查看 https://github.com/oneclickvirt/disktest/releases/tag/output

dd测试:

图片

fio测试:

图片

winsat测试:

1716466264315

卸载

rm -rf /root/disktest
rm -rf /usr/bin/disktest

在Golang中使用

go get github.com/oneclickvirt/disktest@latest