如何在 Linux 系统中创建 1GB 或 10GB 的大文件

由于 Linux 已广泛用于所有数据通信、网络和数据分析,因此对生成实时数据、静态数据和动态数据的需求也很高。 分析师需要在大尺度和小尺度上生成不同类型的数据来演示一个过程。 系统管理员还经常需要生成大于 10GB 的文件来检查系统、硬件和操作系统本身的稳定性。 但是,在 Linux 中,您可以用更少的精力和更少的时间创建大文件来满足所有数据需求。

在 Linux 中创建一个大文件

虚拟数据通常用于测试系统的可扩展性和稳定性。 在 Linux 中,有多种工具和命令可让您创建更大的文件。 这 dd command 是可以在合理的时间内创建更大文件且不会对 CPU 造成太大压力的命令之一。 根据数据类型和大小的要求,您可以执行 dd 命令来创建虚拟数据。 在这篇文章中,我们将看到如何在 Linux 系统中创建更大的文件。

第 1 步:了解与 dd Linux中的命令

在Linux中,dd命令主要是通过终端命令行界面创建镜像文件。 由于这个方便的工具对于 Unix 和 Linux 都非常方便,我们可以使用这个命令在 Linux 中创建一个大文件。 以下是我们在 Linux 上开始创建文件之前需要了解的 dd 命令的语法。

  • dd – 此命令的最初目的是复制和克隆文件。
  • df – 此命令让您知道 Linux 磁盘上的可用空间。
  • du – du 命令允许您显示磁盘分析。
  • ls – 这个传统的 ls 命令以显示文件系统上的文件列表而闻名。

第 2 步:在 Linux 中使用 dd 命令创建一个大文件

要创建大于 1GB 或 10GB 的大文件,我们可以在终端 shell 上运行以下 dd 命令。

$ dd if=/dev/zero of=/path/to/file/storage/output.img [options]

上面带有 if 语法的命令提到了输入卷的确切文件大小,语法解释了输出目标和卷。 因此,通过此命令,输出文件将与输入值相同。 在这里,我们在我们的 Linux 系统上执行相同的命令来检查它是如何工作的。

$ dd if=/dev/zero of=/home/ubuntupit/Large_File/output.img

但是,您也可以执行以下命令来代替上述命令。

$ dd if=/dev/zero of=YOUR_IMAGE_FILE_NAME bs=1 count=0 seek=File_Size_HERE

在这里,我们将在Linux机器上创建一个10GB的大文件来演示在Linux中创建大文件的过程。 在执行命令之前,请确保您的文件系统有足够的可用空间来存储输出文件。

以下带有 -H 标志的 df 命令将让您知道磁盘上的可用空间。

$ df -H

由于我们可以看到我们有足够的空间在我们的 Linux 系统上创建和存储一个大文件,我们现在可以执行以下命令,这将创建一个 10GB 的图像文件。

$ dd if=/dev/zero of=10g.img bs=1 count=0 seek=10G

创建文件后,我们现在可能需要通过运行一个简单的 ls 命令来验证文件是否已成功创建。

$ ls -lh 10g.img
$ stat 10g.img

我们还可以通过 GUI 方法验证新创建的文件的体积或大小。 为此,我们需要在系统上找到该文件。 然后我们需要右键单击该文件并检查属性部分下的基本文件信息。

此外,下面提到的 du 命令将在 Linux 系统上以空值显示文件的大小,因为它仍然是您仍然可以调整大小的虚拟数据(图像文件)。

$ du -h 10g.img

额外提示1:使用 fallocate 创建大文件的命令

既然我们已经看到了 dd 命令是如何工作的,我们现在可以得到另一个命令,它也可以在 Linux 中创建一个大文件。 Linux 上的 fallocate 命令可以在磁盘上预先分配文件大小并创建具有该数据量的文件。 为了更好地理解这个命令,请查看下面给出的基本 fallocate 命令。

fallocate command syntax

例如,我们可以在终端 shell 上运行以下命令,在 Linux 中创建一个 1GB 的大文件。

fallocate -l 1G test.img

现在,为了验证数据,我们可以执行下面提到的 ls 命令来查看 fallocate 命令是否成功创建了 1GB 文件。

fallocate 1G 测试

$ ls -lh test.img

额外提示 2:使用 truncate 命令创建大文件

如果您是数据库工程师或处理数据,您可能正在寻找 truncate SQL 命令,这是一个非常流行的用于创建虚拟数据的 SQL 命令。 在 Linux 中,您还可以使用 truncate 命令通过 truncate 命令创建 1Gb 或更多的大数据量。

请注意,截断只创建零值数据,因此无论您通过 truncate 命令创建什么,实际的文件系统仍然是空的。

下面提到的 truncate 命令将帮助您了解它是如何工作的,以及如何通过该命令在 Linux 中创建大量数据。

#truncate -s 100GB 100-gb-file
#truncate -s 10G 10-gib-file

最后的话

创建用于演示的大数据并不是什么新鲜事,尤其是对于那些使用大数据和数据集成工具的人来说。 整篇文章基于 Linux dd 数据定义(dd 命令),可用于数据创建、数据备份、数据擦除和恢复。 如果您仍然对 dd 命令更感兴趣,您可以随时查看 Linux 上的 dd 手册页。 在这篇文章中,我们讨论了如何在 Linux 中创建一个 1GB 或 10GB 的大文件。

如果您觉得这篇文章有用且内容丰富,请与您的朋友和 Linux 社区分享。 您也可以在评论部分写下您对这篇文章的看法。