小编Tri*_*tos的帖子

dd 正在生成一个 32 MB 的随机文件而不是 1 GB

我想生成一个 1 GB 的随机文件,所以我使用了以下命令。

dd if=/dev/urandom of=output bs=1G count=1
Run Code Online (Sandbox Code Playgroud)

但是每次我启动这个命令时,我都会得到一个 32 MB 的文件:

<11:58:40>$ dd if=/dev/urandom of=output bs=1G count=1
0+1 records in
0+1 records out
33554431 bytes (34 MB, 32 MiB) copied, 0,288321 s, 116 MB/s
Run Code Online (Sandbox Code Playgroud)

怎么了?

编辑:

感谢本主题中的出色答案,我提供了读取 32 个 32 MB 大块的解决方案,这使得 1GB:

dd if=/dev/urandom of=output bs=32M count=32
Run Code Online (Sandbox Code Playgroud)

给出了其他解决方案,将 1 GB 直接读取到内存,然后写入磁盘。此解决方案需要大量内存,因此不推荐使用:

dd if=/dev/urandom of=output bs=1G count=1 iflag=fullblock
Run Code Online (Sandbox Code Playgroud)

script dd random-number-generator

51
推荐指数
2
解决办法
7611
查看次数

标签 统计

dd ×1

random-number-generator ×1

script ×1