测试脚本
#!/usr/bin/env bash
# quick_disk_test.sh
echo "快速磁盘性能测试"
echo "================="
# 测试参数
TEST_SIZE="100" # MB
TEST_FILE="/data/src/disk_test.bin"
# 1. 写入测试
echo "1. 写入测试 (${TEST_SIZE}MB)..."
write_start=$(date +%s.%N)
dd if=/dev/zero of=$TEST_FILE bs=1M count=$TEST_SIZE oflag=direct conv=fdatasync 2>&1 | tail -1
write_end=$(date +%s.%N)
write_time=$(echo "$write_end - $write_start" | bc)
write_speed=$(echo "scale=2; $TEST_SIZE / $write_time" | bc)
echo "写入速度: ${write_speed} MB/s"
echo ""
# 2. 清除缓存
echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null
sleep 2
# 3. 读取测试
echo "2. 读取测试 (${TEST_SIZE}MB)..."
read_start=$(date +%s.%N)
dd if=$TEST_FILE of=/dev/null bs=1M count=$TEST_SIZE iflag=direct 2>&1 | tail -1
read_end=$(date +%s.%N)
read_time=$(echo "$read_end - $read_start" | bc)
read_speed=$(echo "scale=2; $TEST_SIZE / $read_time" | bc)
echo "读取速度: ${read_speed} MB/s"
echo ""
# 4. 清理
rm -f $TEST_FILE
# 5. 显示结果
echo "测试结果汇总:"
echo "-------------"
echo "写入速度: ${write_speed} MB/s"
echo "读取速度: ${read_speed} MB/s"
echo "测试文件: ${TEST_SIZE}MB"
echo "测试完成!"
评论 (0)