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

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命令十分强大,我只是使用了它其中的一种,以后还需学习其他用法。

本文由 CentOS中文站 - 专注Linux技术 作者:centos 发表,其版权均为 CentOS中文站 - 专注Linux技术 所有,文章内容系作者个人观点,不代表 CentOS中文站 - 专注Linux技术 对观点赞同或支持。如需转载,请注明文章来源。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注