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

备份:

[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=> 读取测试

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值