Linux--如何把快速把服务器空间写满(创建大文件)


有时我们需要测试服务器空间不足时程序的性能。这时你就需要手动对服务器创建大文件使其空间不足了。

我在百度之后发现了三个命令:truncate dd fallocate

truncate命令:

它的作用是指定一个文件的大小,如果该文件不存在,就会创建该文件。如果指定文件的大小小于原先的大小,会丢失内容。

这个命令指定的文件大小其实是虚拟的。只是显示出来的大小。如果你指定一个非常大的文件。其实服务器剩余空间并不会减少。

用法:turncate -s 1G test.txt --创建一个虚拟大小1G的test文件,其真实大小为0

dd命令:

可以创建虚拟大小的文件,也可以创建真实占用空间的文件。

真实:dd if=/dev/zero of=test.txt count=10 bs=512M --创建一个5G大的test.txt文件

虚拟:dd if=/dev/zero of=test.txt count=10 bs=512M seek=10G --创建一个5G大的test.txt文件,但显示容量为10G

参数含义:

if 输入文件

of 输出文件

count 创建的文件构成的块数

bs 每块的容量大小

seek 指定的虚拟大小

/dev/zero 一个不断返回0值字节的字符设备,为了提供写入的字符。

fallocate命令:

可以直接分配一个指定容量的真实大小文件,且速度很快。

用法: falloate -l 5G test.txt --创建一个大小为5G的真实文件

 

选择:最后我还是使用fallocate进行文件的创建,因为它速度较快。

注:

1.文件的虚拟大小可以通过ls/ll命令进行查看,真是大小可以通过进入文件所在目录,然后 du -sh *,找到对应文件名,看其真实大小。

2.dd命令十分强大,我只是使用了它其中的一种,以后还需学习其他用法。
————————————————
版权声明:本文为CSDN博主「stalin_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/stalin_/article/details/81328409


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM