Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3647457
  • 博文数量: 880
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 6155
  • 用 户 组: 普通用户
  • 注册时间: 2016-11-11 09:12
个人简介

To be a better coder

文章分类

全部博文(880)

文章存档

2022年(5)

2021年(60)

2020年(175)

2019年(207)

2018年(210)

2017年(142)

2016年(81)

分类: LINUX

2018-08-06 09:37:55


dd if=/dev/sda | gzip > disk.img.gz
gzip -dc /root/disk.img.gz | dd of=/dev/hdb

dd命令:convert and copy a file

用法:

dd if=/PATH/FROM/SRC of=/PATH/TO/DEST

bs=#:block size, 复制单元大小;

count=#:复制多少个bs;

磁盘拷贝:

dd if=/dev/sda of=/dev/sdb

备份MBR

dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1

破坏MBR中的bootloader:

dd if=/dev/zero of=/dev/sda bs=256 count=1

两个特殊设备:

/dev/null: 数据黑洞;

/dev/zero:吐零
bs=bytes
一次读和写 bytes 字节。这将覆盖 ibs 和 obs 设定的值(并且,设定 bs 不等于同时将 ibs 和 obs 设为同一个值,至少在 只使用 sync, noerror 或 notrunc 转换时是这样的。因为bs规定,每个输入块都应作为单独 的数据块拷贝到输出,而不把较短的块组合到一起)。
conv=转换[,转换]...
将文件按 转换 参数指定的方式转换(在lq,rq两边没有空格)
sync
用0填充到每个输入块的末尾,使其大小为 ibs 字节。
noerror
发生读错误时,继续进行。

1.做硬盘对拷:

dd if=/dev/sda of=/dev/sdb bs=1024k &

注意:

(1).先改fstab文件,把LABLE换成对应的  /dev/sda(不改的话,拷完后重启系统不知道从哪块盘启动了)

/dev/sda2              /                      ext3    defaults        1 1

/dev/sda5              /data                  ext3    defaults        1 2

/dev/sda1              /boot                  ext3    defaults        1 2

(2).一定要写bs=1024k,一定要加k, 默认是bytes,不加K或M,是以bytes写入,

    有可能系统要挂了,至于 也有人写bs=4M,没啥区别,最后速度差不多。

(3).加 & 后台进行,因为要用当前的终端来查看dd进度,如果忘了加 &,可以用Ctrl+z

把dd进程移到后台,再运行 bg 记其后台运行(为了在当前终端查看进度)。

2.查看dd完成进度,要不然鬼知道啥时候能dd完成啊

ps -ef|grep dd  //查看 dd 进程id号,其实上边命令加&后,己经显示了。

kill -USR1  id  //查看 dd 完成进度

100118036480 bytes (100 GB) copied, 1346.94 seconds, 74.3 MB/s

如果想时时查看进度,可以用下面语句:

watch -n 1 kill -USR1 3730  // 每2秒查看一次进度

while kill -USR1 3730;do sleep 2;done;  //每2秒查看一次进度

这种是通过发送USR1信号的方法,去产生一个标准的IO错误,来达到显示当前COPY进度与COPY速度的目的。

3.如果sdb原来是一个裸盘没有格式化过,dd可能并不能拷贝superblock信息,所以盘不能mount起来。

所以只需要进入fdisk界面:

# fdisk /dev/sdb

# w

“write table to disk and exit”,sdb就可以mount起来了,如果是格过的,可能需要fsck一下就可以了

注意:建议不要轻易dd,有可能把系统搞坏,在有把握情况下或数据备份过情况下使用dd

阅读(3541) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~