Linux 使用dd命令快速生成大文件

2020-02-04T23:41:00

最近在测试NAS的服务器,需要把NAS的服务器的磁盘迅速填满来实测磁盘的性能,再来实测性能看看是否掉盘。如果我们像测试家里的电脑磁盘那样,向新的磁盘疯狂写入Steam的游戏或者各种大文件。非常麻烦。正好,Linux的dd命令可以帮助到我们。刚刚重温一下Linux命令,总结一下学习笔记:

dd参数

  • if=文件名:输入文件名,默认为标准输入。即指定源文件。
  • of=文件名:输出文件名,默认为标准输出。即指定目的文件。
  • ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。
  • obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。
  • bs=bytes:同时设置读入/输出的块大小为bytes个字节。
  • cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。
  • skip=blocks:从输入文件开头跳过blocks个块后再开始复制。
  • seek=blocks:从输出文件开头跳过blocks个块后再开始复制。
  • count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。

这里摘致:菜鸟教程

创建指定文件,写入磁盘

dd if=/dev/zero of=hello.bin bs=100M count=1

往当前目录写入一个100M的hello.bin文件,这时候文件生成的速度取决于你的磁盘读写性能,写入完成,会显示磁盘的写入速度和文件生成的时间。

创建指定文件,但是不写入磁盘

dd if=/dev/zero of=hello.bin bs=1M count=0 seek=1024

上面的命令,创建的文件在文件显示1G,但是不实际占用磁盘占用,因此创建速度很快。
seek的作用是跳过文件中的指定大小,这就达到创建大文件,但是不实际写入磁盘。
当然,因为不写入硬盘,你想在10T都可以,如果你想在服务器进行下载,还是建议生成一个实际的文件。

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »