我如何使用 Shell 命令,在 UNIX/Linux/BSD 系统上使用dd命令创建1GB或者10GB镜像文件?

您可以使用 dd 命令生成镜像文件,用来测试网络或文件系统。

你需要使用下面命令:

fallocate - 预分配空白文件;

truncate  - 缩小或扩展文件的大小;

dd - 转换和复制文件,例如 克隆、新建、覆盖 镜像;

df - 查看磁盘空间;

du - 统计磁盘使用情况;

ls - 列出文件大小;

fallocate 命令语法

基本语法是:

fallocate -l Image_Size_Here /path/to/image.img

使用 fallocate 命令在 Linux 上创建大文件

用下面命令创建 1GB 文件:

fallocate -l 1G test.img

使用 ls 命令查看文件大小:

$ ls -lh test.img

示例输出:

-rw-r--r--. 1 root root 1.0G Nov 27 03:42 test.img

你可以使用 stat 或 du 命令查看块分配信息:

stat test.img

File: `test.img'

Size: 1073741824      Blocks: 2097160    IO Block: 4096  regular file

Device: 805h/2053d      Inode: 9043983    Links: 1

Access: (0644/-rw-r--r--)  Uid: (    0/    root)  Gid: (    0/    root)

Access: 2013-11-27 03:42:27.575841698 -0600

Modify: 2013-11-27 03:42:27.575841698 -0600

Change: 2013-11-27 03:51:06.108962462 -0600

du -h test.img

1048580 test.img

创建 100M 大小的文件,按回车即可:

fallocate -l 100M file.out

后面的 -l 参数时用来指定文件大小以字节为单位,如 k, m, g, t, p, e 分别表示 KiB, MiB, GiB,TiB,PiB,EiB。

dd 命令语法

注意: 下面的信息只存在于老版本的 Linux 或当 fallocate 命令不可用的系统上。如果可能的话尽量使用 fallocate 命令创建的二进制镜像文件。dd 命令被认为是旧的并且不推荐使用,但这里介绍的只是历史的原因。

基本语法:

dd if=/path/to/input of=/path/to/output [options]

OR

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

OR

dd if=/dev/zero of=YOUR-IMAGE-FILE-NAME-HERE bs=1 count=0 seek=Size-HERE

使用 dd 命令创建镜像:

首先,要确保磁盘有足够的空间来存放 dd 创建的文件:

$ df -H

创建 1MB 文件,按回车:

$ dd if=/dev/zero of=test.img bs=1024 count=0 seek=1024

你将会得到一个空文件(也称为“稀疏文件”)。创建 10M 的文件,按回车:

$ dd if=/dev/zero of=test.img bs=1024 count=0 seek=$[1024*10]

创建 100M 的文件,按回车:

$ dd if=/dev/zero of=test.img bs=1024 count=0 seek=$[1024*100]

$ ls -lh test.img

创建 1GB 的文件:

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

示例输出:0+0 records in

0+0 records out

0 bytes (0 B) copied, 0.000235686 s, 0.0 kB/s

确认文件大小(留意 bs 参数的作用):

$ ls -lh 1g.img

$ stat 1g.img

$ du -h 1g.im

dd 提示: 在 Unix 或 Linux 新建指定大小文件

如果 truncate 命令不可用,尝试下面语法:

dd if=/dev/zero of=/path/to/fiie.img bs=YOUR-FILE-SIZE-HERE count=1

在这个例子中,新建一个 1GB 大小的文件(在 *BSD/OS X 使用 1g):

$ dd if=/dev/zero of=1g.bin bs=1G count=1

示例输出:1+0 records in

1+0 records out

1073741824 bytes (1.1 GB) copied, 8.12307 s, 132 MB/s

确认文件大小:

$ stat 1g.bin

示例输出:  File: `1g.bin'

Size: 1073741824      Blocks: 2097152    IO Block: 4096  regular file

Device: 805h/2053d      Inode: 9043988    Links: 1

Access: (0644/-rw-r--r--)  Uid: (    0/    root)  Gid: (    0/    root)

Access: 2013-11-27 04:15:02.962662890 -0600

Modify: 2013-11-27 04:15:03.769673943 -0600

Change: 2013-11-27 04:15:03.769673943 -0600

译者:Daniel

linux下创建1G的文件,Linux/UNIX: 使用 dd 命令创建 1GB 大小的二进制相关推荐

  1. linux下怎么批量命名文件,linux下的文件操作——批量重命名

    概述:在日常工作中,我们经常需要对一批文件进行重命名操作,例如将所有的jpg文件改成bnp,将名字中的1改成one,等等.文本主要为你讲解如何实现这些操作 1.删除所有的 .bak 后缀: renam ...

  2. linux下执行shell脚本文件,Linux下使用shell脚本自动执行脚本文件

    搜索热词 以下实例本人在Centos6.5 64位操作系统中使用 一.定时复制文件 a.在/usr/local/wfjb_web_back目录下创建 tomcatBack.sh文件 #将tomcat中 ...

  3. linux下kbhit的头文件,linux下kbhit的实现

    我们知道,在windows下有个键盘测试函数,int kbhit(void).使用该函数需要包含头文件conio.h.执行时,kbhit测试是否有键盘按键按下,若有则返回非零值,否则返回零. 在Uni ...

  4. linux下github上传文件,linux下将本地文件上传到github中?

    今天编写一份Python基础代码,经过Linux上传到github上,遇到点问题,已经解决 1.首先sudo su 进入root 用户 2.ls 检查出当前文件下有什么文件 3. cd 进入你将要上传 ...

  5. linux下c语言写文件,Linux下C语言之文件操作

    C语言库函数的文件操作实际上是独立于具体的操作系统平台的,不管是在DOS.Windows.Linux还是在VxWorks中都是这些函数: 创建和打开的函数: FILE *fopen(const cha ...

  6. linux 下写不了文件,linux下用root为什么写不了windows下的文件

    windows和Linux双系统怎样安装 毫无疑问,Windows是一个功能强大的操作系统,无论在兼容性方面,还是在易用性方面,都非常出色,但您有没有注意到市场上悄然兴起的Linux呢?作为一款出色的 ...

  7. 在linux下怎么建立sh文件,Linux系统下如何运行.sh文件的实现

    在Linux系统下运行.sh文件有两种方法,比如我在root目录下有个datelog.sh文件 第一种(这种办法需要用chmod使得文件具备执行条件(x): chmod u+x datelog.sh) ...

  8. linux下制作windows镜像文件,Linux之自定义ISO镜像文件制作

    这一节主要介绍iso镜像制作过程,主要包含两部分mkisofs:创建镜像文件 光盘烧录工具 如果终端没有mkisofs指令,需要下载一下,例如ubuntu14.04 apt-get install g ...

  9. linux下tmpfs是什么文件,Linux下tmpfs介绍及使用

    tmpfs介绍 tmpfs是一种虚拟内存文件系统,而不是块设备.是基于内存的文件系统,创建时不需要使用mkfs等初始化 它最大的特点就是它的存储空间在VM(virtual memory),VM是由li ...

  10. 在linux下挂载ios镜像文件,linux下挂载iso镜像文件

    linux挂载iso镜像可以分为两种,直接挂载镜像和上传镜像文件至服务器进行挂载 一.虚拟机镜像挂载 测试时使用虚拟机,此时可以直接在虚拟机的设置中将镜像文件直接选择并进行挂载,无需上传至虚拟机服务器 ...

最新文章

  1. 在JavaScript中深度克隆对象的最有效方法是什么?
  2. shell脚本编程学习之路-shell数组
  3. JVM中GC对象配置
  4. 第五章 常用Lua开发库1-redis、mysql、http客户端
  5. c语言怎样输出有颜色的迷宫,c语言写的迷宫问题
  6. how does eclipse know what tasks it should do when we select Maven build
  7. Linux下Tomcat设置自动启动
  8. linux系统 个人使用情况,个人使用Linux操作系统常要做的事
  9. sqlmap指定cookie_sqlmap处理cookie数据
  10. Appium下载安装与配置
  11. 信息系统项目管理之进度管理过程
  12. word删除空白页删不了怎么办?Word怎么删除空白页?
  13. Vue实战篇三十五:实现滑动拼图验证登录
  14. 实验1:用户的登录与退出、IO重定向与简单文件操作
  15. C4D中英文对照—噪波基础设置
  16. 二级域名做网站有哪些优势?
  17. 哈希记账小工具(wordpress、woocommerce、kafka、frp分布式集成)
  18. 服务器对接虚拟主机,服务器对接虚拟主机
  19. linux 下卸载torch,在Ubuntu14.04安装torch7笔记
  20. 地平线与百丽国际达成战略合作 将联合打造智慧零售跨界合作标杆

热门文章

  1. mysql中没有sock文件_mysql.sock文件不见了问题的解决方法
  2. 好用的parallel命令
  3. 国际学术会议-英文演讲稿
  4. 计算机组装与维护标准教程(2010-2012版)电子教材,计算机组装与维护标准教程(2015—2018版)...
  5. vue中使用svg矢量图
  6. Linux主目录下的文件夹名称改为英文
  7. 如何用Smartbi做数据可视化分析图表
  8. 企业微信sdk调用,通过手机号或微信好友添加客户
  9. 智能客服 | 5款绝佳客户服务聊天机器人推荐
  10. -webkit-内核兼容处理