怎么在 Linux 中几秒钟创建一个 2GB 的大文件?

admin 2022年12月26日18:29:21安全闲碎评论0 views1104字阅读3分40秒阅读模式

怎么在 Linux 中几秒钟创建一个 2GB 的大文件?

平常,我们一般用 touch 命令创建一个空文件。
但是,当我们排除故障或想在些特定场景中进行测试时,我们可能需要特定大小的大文件,比如 500 MB 或 2 GB。
这个时候,我们总不能创建一个空文件,然后开始在其中写入垃圾文本吧。
有没有什么办法可以创建特定大小的新文件呢?
下面就介绍几种创建大文件的方式,供大家参考。

使用 dd 命令创建大文件

dd 命令用于复制和转换文件。它最常见的用途是创建实时 Linux USB。
dd 命令是实际写入硬盘,文件产生的速度取决于硬盘的读写速度,根据文件的大小,该命令将需要一些时间才能完成。
假设我们要创建一个名为 rumenz.img 的 2 GB 大小的文本文件,可以执行以下操作:
dd if=/dev/zero of=rumenz.img bs=2G count=1

我们可以根据需要来更改块大小和块数。例如,可以使用 bs=1M 和 count=1024 来获得 1024 Mb 的文件。

使用 truncate 命令创建大文件

truncate 命令将一个文件缩小或者扩展到所需大小。使用 -s 选项来指定文件的大小。
接下来,我们使用 truncare 命令来创建一个 2GB 大小的文件。
truncate -s 2G rumenz.img

可以使用ls -lh rumenz.img命令查看生成的文件。

默认情况下,如果请求的输出文件不存在,truncate 命令将创建新文件。我们可以使用 -c 选项来避免创建新文件。

使用 fallocate 命令创建大文件

fallocate 命令是我比较推荐的创建大文件的方法,因为它创建大文件的速度是最快的。
假设我们要创建一个 1 GB 的文件,可以执行以下操作:
fallocate -l 1G rumenz.img

可以使用ls -lh rumenz.img查看生成的文件。

结论

dd 和 truncate 创建的文件是稀疏文件。在计算机世界中,稀疏文件是一种特殊文件,具有不同的表观文件大小(它们可以扩展到的最大大小)和真实文件大小(为磁盘上的数据分配了多少空间)。

fallocate 命令则不会创建疏文件,而且它的速度更快,这也是我比较推荐使用 fallocate 创建大文件的原因。


原文来自「良许Linux」|侵删


怎么在 Linux 中几秒钟创建一个 2GB 的大文件?

怎么在 Linux 中几秒钟创建一个 2GB 的大文件?


中电运行是专业专注培养能源企业IT工匠和提供IT整体解决方案的服务商,也是能源互联网安全专家。我们每天都会分享各种IT相关内容,如果您有任何关于IT疑问,欢迎给我们留言怎么在 Linux 中几秒钟创建一个 2GB 的大文件?

怎么在 Linux 中几秒钟创建一个 2GB 的大文件?

怎么在 Linux 中几秒钟创建一个 2GB 的大文件?

小白必读!寰宇卫士手把手教你栈溢出(上)

手把手教你栈溢出(中)

手把手教你栈溢出(下)

《信息安全知识》之法律关键常识汇总

CTF经验分享|带你入门带你飞!

怎么在 Linux 中几秒钟创建一个 2GB 的大文件?

原文始发于微信公众号(寰宇卫士):怎么在 Linux 中几秒钟创建一个 2GB 的大文件?

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月26日18:29:21
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  怎么在 Linux 中几秒钟创建一个 2GB 的大文件? http://cn-sec.com/archives/1461355.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: