fallocate命令在linux系统用于分配或取消分配文件空间的命令,即可以通过fallocate命令创建一个指定大小的文件,但不会实际写入数据。根据这一特性,可以使用fallocate命令创建一个巨大的文件,用于测试系统磁盘压力和数据管理。
命令格式:fallocate 参数 文件名;
使用fallocate –h命令查看fallocate命令的用法和支持哪些参数,如图:
图1
参数说明-l参数:给文件预分配大小,默认单位为字节,也可以选择k、K、m、M、g、G为单位,也可以选择t、p为单位,对应是TB、PB,使用者需要根据实际情况和磁盘空间的大小来选择合理的单位,否则会创建失败;如图:
图2
-c参数:当分配的空间太大时,可以使用该参数移除指定的大小,通常和-l参数一起使用;如图:
图3
-d参数:释放文件中未使用的磁盘空间,但是不会改变文件的大小;
-i参数:当想要对预分配的文件继续增加预分配空间时,可以使用该参数扩展文件的大小,通常和-l参数一起使用,和-c参数相反;如图:
图4
-n参数:保持文件的大小不变;如图:
图5
-o参数:在特定偏移量处开始预分配空间,即在指定文件的位置开始预分配空间;
-p参数:用于将文件的指定大小释放,让文件系统可以重新使用这部分空间,如用fallocate -p -l 1G testfile命令,创建一个大小为1G的文件,但是实际占用的磁盘空间是小于1G的;
-z参数:将文件指定大小部分设置为0;