怎么模拟磁盘空间满的情况?附几个磁盘性能测试软件名备忘
可以用python脚本来填充文件快速创建一个让硬盘磁盘撑爆的文件。很简单的代码直接贴上了:
import shutil
import os
#DiskSpd是一款由微软开发的用于测试磁盘性能的工具。它可以模拟真实的应用负载,测试磁盘的读写速度、IOPS、延迟等性能指标。
#DiskSpd性能压测 参考https://cloud.tencent.com/developer/article/1835975
#SQLIO 模拟随机或者顺序的方式来测试磁盘IO的性能
# SQL Server压测工具对比 https://blog.51cto.com/u_13631369/6409699
#操作J盘分区
path='J:/'
# 获取的大小单位是字节
total,used,free = shutil.disk_usage(path)
# 换算单位为GB
total_gb = total / (1024 ** 3)
used_gb = used / (1024 ** 3)
free_gb = free / (1024 ** 3)
print(total_gb,used_gb,free_gb)
# 指定生成的文件路径
file_path = 'J:/enc.dat'
# 指定文件大小(单位为字节)1024 * 1024 * 1024 = 1GB
file_size = int(free_gb-1)*1024 * 1024 * 1024
if file_size>1:#剩余空间必须大于1G
# 创建指定大小的文件
with open(file_path, 'wb+') as f:
# 将文件指针移动到文件末尾,然后向文件中写入一个空字节
f.seek(file_size - 1)#写文件大小为剩余空间减去1G
f.write(b' ')
print("写入完成,文件大小"+str(file_size)+"GB")
else:
print("文件大小错误,操作失败")

这种操作方式因为不是真的写文件数据,只是改变了文件指针,我这个快300G的单文件不到一秒就完成了。其实我本意是想找个能模拟mssql负载压测的工具(上面代码里面也贴了相关的软件名,但还没时间研究),在遨游冲浪的时候发现了这个么个有意思的python脚本就分享出来了!
基于互联网精神,在注明出处的前提下本站文章可自由转载!
本文链接:https://ranjuan.cn/fake-disk-partition-python/
赞赏
微信赞赏
支付宝赞赏
发表评论