dd命令 备份和恢复磁盘 linux系统下

来源:互联网 发布:乐乎lofter 编辑:程序博客网 时间:2024/04/28 23:45

备份:

[root@server~]#ddif=/dev/sdaof=/dev/sdb =>备份整个磁盘到另外一个磁盘

[root@server~]#ddif=/dev/sdbof=sda.bak=>备份整个磁盘为某个文件

[root@server~]#ddif=/dev/sda|gzip>sda.bak.gz=>备份并且压缩

[root@server~]#dd if=/dev/sdaof=dbt.bak count=1 bs=512 skip=446

=> 跳过前446字节备份磁盘第一扇区的后66字节DPT信息到指定文件

==================================================================

恢复:

[root@server~]#ddif=/dev/sdbof=/dev/sda

[root@server~]#gzip-dcsda.bak.gz|ddof=/dev/sda

[root@server~]# dd if=/path/to/image of=/dev/hdx count=1 bs=512 seek=446
=>
将备份DPT信息写到MBR后面的66字节

==================================================================

销毁数据:

[root@server~]#ddif=/dev/urandomof=/dev/sda1=>利用随机数填充硬盘数据,达到销毁数据的作用

 通过比较dd指令输出中所显示的命令执行时间(选时间最少的那个),即可确定系统最佳的block size大小

注意其中磁盘要以 -o sync的选项挂载,否则会导致数据写入到缓存中,而非写入磁盘上去,导致测试不准确
dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file 
dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file 
dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file 
dd if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file

测试读写速度

注意:其中磁盘要以 -o sync的选项挂载,否则会导致数据写入到缓存中,而非写入磁盘上去,导致测试不准确
[root@server ~]# mount -o sync,remount /

[root@server ~]# mount | grep sync

/dev/sda2 on / type ext4 (rw,sync)

[root@server ~]# dd if=/dev/zero of=/tmp/test.dd bs=4096 count=5000 => 测试写入速度

[root@server ~]# dd if=/tmp/test.dd of=/dev/null bs=4096 count=5000=> 读取测试

原创粉丝点击