dd是一个非常使用高效的命令,他的作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。

一、备份

  • 备份整个磁盘到磁盘
#将sdx整盘备份到sdy中去
dd if=/dev/sdx of=/dev/dev/sdy
  • 备份整盘到目录
#将sdx整盘被分到目录中去
dd if=/dev/sdx of=/PATH/back
  • 整盘备份并压缩
#整盘压缩后备份到制动路径
dd if=/dev/sdx | gzip > /path/back.gz

二、恢复

  • 整盘恢复
#磁盘到磁盘
dd if=/dev/sdy of=/dev/md0
#目录到磁盘
dd if=/PATH/dir of=/dev/md0
  • 整盘的压缩文件恢复
#将文件解压缩到标准输出,通过管道用dd输出到磁盘
#-d解压;-c解压缩到标准输出
gzip -dc /path/back.gz | dd of=/dev/md0

三、测试

  • 得到最恰当的block size
#通过执行时间确定系统的最佳block size
dd if=/dev/zero bs=1024 count=1000000 of=/1G.file
dd if=/dev/zero bs=2048 count=500000 of=/1G.file
dd if=/dev/zero bs=4096 count=250000 of=/1G.file
  • 测试读写速度
#测试读
dd if=/dev/zero of=/1G.file bs=1024 count=1000000
#测试写
dd if=/1G.file bs=64k | dd of=/dev/null

四、MBR表的备份与恢复

dd if=/dev/sdx of=sdxmbr.bak bs=512 count=1
dd if=sdxmbr.bak of=/dev/sdx bs=512 count=1

四、其他

  • 修复硬盘

    当硬盘长时间未使用,磁盘会产生消磁点。当磁头读到这些区域时会遇到困难,容易产生I/O错误。如果这些情况发生到第一个扇区时,可能会导致报废。所以使用磁盘修复功能,这个过程安全高效
dd if=/dev/sda  of=/dev/sda
  • 复制内存中的数据
dd if=/dev/mem  of=/root/mem.bin bs=1024
  • 生成镜像
dd if=/dev/cdrom of=/root/cdrom.iso
  • 销毁磁盘数据
#利用随机数填充数据,
dd if=/dev/urandom of=/dev/sda1

dd命令的巧妙使用的更多相关文章

  1. 使用dd命令备份Linux分区

    为了备份分区,开始使用的是Remastersys,但最终生成的iso文件仅有几十K,应该是软件bug,且此软件不再更新,后尝试使用Linux Respin,但github一直连接不上. 其实可以尝试使 ...

  2. linux dd命令详解

    Linux-dd命令详解 dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 名称: dd 使用权限: 所有使用者dd 这个指令在 ...

  3. 使用dd命令克隆整个系统(转)

    神奇的ghost的原理是什么呢?不就是数据复制吗?Linux下的dd命令不就是最强大的数据复制工具!          既然如此,我为什么要使用g4l这样复杂的工具呢?一条dd命令不就可以帮我实现任意 ...

  4. Linux 下的dd命令使用详解(摘录)

    一.dd命令的解释 dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512:c=1:k=1024:w=2 参数注释: 1. ...

  5. linux下显示dd命令的进度:

    linux下显示dd命令的进度: dd if=/dev/zero of=/tmp/zero.img bs=10M count=100000 想要查看上面的dd命令的执行进度,可以使用下面几种方法: 比 ...

  6. 【转载】shell中 dd 命令

    转载自:http://blog.chinaunix.net/uid-24958038-id-3416169.html dd if=/dev/zero of=的含义是什么? 一.dd命令的解释 dd:用 ...

  7. 6个关于dd命令备份Linux系统的例子

    数据丢失带来的损失是相当昂贵的.关键数据的丢失会对各种规模的企业带来影响.有几种方法来备份Linux系统,包括rsync的和rsnapshot等.本文提供有关使用dd命令备份Linux系统的6个实例. ...

  8. linux dd命令实用详解

    linux dd命令刻录启动U盘详解 dd命令做usb启动盘十分方便,只须:sudo dd if=xxx.iso of=/dev/sdb bs=1M 用以上命令前必须卸载u盘,sdb是你的u盘,bs= ...

  9. dd命令使用详解

    dd命令使用详解 http://www.cnblogs.com/qq78292959/archive/2012/02/23/2364760.html 1.命令简介 dd 的主要选项: 指定数字的地方若 ...

随机推荐

  1. 一个滑动选中RecyclerView中Item的布局SlidingCheckLayout,手指滑过Item时多项选中。

    SlidingCheckLayout是一个滑动选中RecyclerView中Item的布局,手指滑过Item时多项选中. 作者:竹尘居士 github:https://github.com/homgw ...

  2. 【转】shell学习笔记(三)——引用变量、内部变量、条件测试、字符串比较、整数比较等

    1.env显示当前的环境变量 2.PS1='[\u@\h \w \A] \$' 可以设置bash的命令与提示符. 3.echo $$ 显示当前bash的PID号 4.echo $?显示上一条指令的回传 ...

  3. lvs+keepalive构建高可用集群

    大纲 一.前言 二.Keepalived 详解 三.环境准备 四.LVS+Keepalived 实现高可用的前端负载均衡器 一.前言        Keepalived使用的vrrp协议方式,虚拟路由 ...

  4. 浅谈ES6

    ECMAScript6.0(简称ES6)是javaScript语言的下一代标准,已经在2015年6月正式发布了.它的目标,使得javaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言 ...

  5. 这可能是我觉得最折腾的C++环境配置(编码+调试)--mac+eclipse

    本着造福大众的心态,万一可能有人喜欢这种环境开发呢对吧~~折腾了一天,又是谷歌又是百度,讲真遇到报错问题搜出的资料挺少的,看来用这类环境开发C++的人不多,毕竟谁没事干放着xcode,vscode不用 ...

  6. BZOJ 3895: 取石子[SG函数 搜索]

    有N堆石子 ·从某堆石子中取走一个 ·合并任意两堆石子 不能操作的人输. 100%的数据满足T<=100,  N<=50. ai<=1000   容易发现基础操作数$d=\sum a ...

  7. 【linux之用户,密码,组管理】

    一.用户及密码 用户账户 超级用户:UID=0 root 普通用户:UID!=0 系统用户: 0<UID<500 为了维持系统的某些功能或者实现某些服务 不能完成登录时候的身份验证 普通用 ...

  8. qt中创建进程

    进程:1.QProcess 进程类 QProcess *a=new QProcess(); 2.启动void QProcess::start(const QString & command, ...

  9. EL表达式多条件判断方式

    <td> <c:forEach items="${cityMap}" var="entry"> <hr> <input ...

  10. PHP中的http协议

    PHP中的http协议 http协议基本组成 报文:用于Http协议交互的信息 请求行:包括请求的方法,URL和HTTP协议版本 状态行:包括响应结果的状态码,状态描述和Http版本 首部字段:包括请 ...