有时我们需要测试服务器空间不足时程序的性能。这时你就需要手动对服务器创建大文件使其空间不足了。 我在百度之后发现了三个命令: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命令十分强大,我只是使用了它其中的一种,以后还需学习其他用法。 (责任编辑:IT) |