Linux创建大文件主要有三种方式。

使用DD命令

dd命令,可以从标准输入或指定的文件中读取数据,拷贝至新文件。

示例:创建1G的文件,写入0,大小是1G

dd if=/dev/zero of=my_new_file count=1 bs=1G

dd写入是很慢的,取决于磁盘的写入速度,它是真的有往磁盘写数据。
dd还有一个seek的参数,可以指定游标的位置,从而创建稀疏文件,就是直接写个文件结束符就完事了。这样的文件,用ls查是很大,用du查就很小了。因为它本质上不占用磁盘空间。

示例:创建100G的文件

dd if=/dev/zero of=my_new_file count=0 bs=1G seek=100G

使用truncate命令

这个命令创建的也是稀疏文件,实际不占用磁盘空间。

示例:创建100G的文件

truncate -s 100G my_new_file

使用fallocate命令

这个命令会保留你想要的空间,但不会往磁盘写入任何东西,执行速度还是相当快的。用du查看能发现它的确占用了磁盘空间。

示例:创建100G的文件

fallocate -l 100G my_new_file

版权声明:如无特别声明,本文版权归 一年四季 所有,转载请注明本文链接。

(采用 CC BY-NC-SA 4.0 许可协议进行授权)

本文标题:《 linux创建大文件 》

本文链接:https://www.yucanlin.cn/operation/linux%E5%88%9B%E5%BB%BA%E5%A4%A7%E6%96%87%E4%BB%B6.html