1 root
root 1746 Aug 29 16:57 /tmp/passwd.back
# 仔细的看一下,我的
/etc/passwd 档案大小为 1746 bytes,因为我没有设定 bs ,
# 所以预设是 512 bytes 为一个单位,因此,上面那个 3+1 表示有 3 个完整的
# 512 bytes,及未满 512 bytes 的另一个 block 的意思啦!
# 事实上,感觉似乎是 cp 这个指令啦~
范例二:备份 /dev/hda 的 MBR
[root@linux ~]# dd if=/dev/hda of=/tmp/mbr.back bs=512
count=1
1+0 records in
1+0 records out
# 这就得好好了解一下?~我们知道整颗硬盘的 MBR 为 512 bytes,
# 就是放在硬盘的第一个
sector 啦,因此,我能利用这个方式来将
# MBR 内的所有数据都纪录下来,真的非常厉害吧! ^_^
范例三:将整个 /dev/hda1 partition 备份下来。
[root@linux ~]# dd if=/dev/hda1 of=/some/path/filename
# 这个指令非常厉害啊!将整个
partition 的内容全部备份下来~
# 后面接的 of 必须要不是在 /dev/hda1 的目录内啊~否则,怎么读也读不完~
# 这个动作是非常有效用的,如果改天你必须要完整的将整个 partition 的内容填回去,
# 则能利用 dd if=/some/file
of=/dev/hda1 来将数据写入到硬盘当中。
# 如果想要整个硬盘备份的话,就类似
Norton 的 ghost 软件一般,
# 由 disk 到 disk ,嘿嘿~利用
dd 就能啦~厉害厉害!
你能说, tar 能用来备份关键数据,而 dd 则能用来备份整颗 partition 或 整颗 disk
,非常不错啊~不过,如果要将数据填回到 filesystem 当中,
可能需要考虑到原本的 filesystem 才能成功啊!