2011年8月1日星期一

dd: 穷人的硬盘备份与恢复工具

如果你的计算机的硬盘毁坏了,就得重新安装操作系统。费时费力不说,你的数据文件也丢失了。如果你愿意花钱,可以买硬盘备份软件。NORTON 就有这个功能。不过你得年年交费。

我有个小经验,多年使用,从无差错,也从来没人来收费。有兴趣的话,你不妨试试这个工具,那就是LINUX 的dd 指令。

基本上所有LINUX系统都会带dd指令。所有任何LINUX版本都可以用。我用得顺手的是KNOPPIX。因为它有几个特点。
1)它是LIVE CD。整个系统在一张CD光盘上。不用安装到硬盘上,对现存的系统没有任何影响。
2)它启动较快。红旗7也是LIVE CD,可启动时间无法忍受。
3)它虽小却能兼容许多硬件,我家里的计算机机龄从5年到1年都有,从没有启不动的。
4)它在 X WINDOW 下的 FILE MANAGER 会显示当前所在的路径。FEDORA 也是 LIVE CD,但它的 FILE MANAGER 就不显示路径,你不容易确定源盘和的盘。显示当前所在的路径这点对于做硬盘备份很有用。你绝对不可以把备份的“源盘”和“的盘”搞混了。


准备工作(一次性):

1。准备一个备份硬盘,容量大大益善(比如1TB,现在才卖五、六十美元,2TB,一百美元出头),买一个USB硬盘的外壳(20美元),把硬盘装入外壳,就成了你的USB外接备份硬盘。如嫌麻烦,直接买一个USB外接硬盘。

2。启动windows系统,把备份硬盘插入USB插口。如果备份硬盘尚未格式,你可以格式它)。把它命名为“BACKUP” (可以任意命名,只是便于在LINUX系统中区别硬盘)。

3。从下面的链接下载KNOPPIX 的ISO 文件(我不懂德语,选英文版的ISO) http://knoppix.cs.wisc.edu/pub/mirrors/linux/knoppix

4。下载后核对md5sum,确定下载过程中ISO文件的可靠性。把 ISO 文件做成光盘。(注意不是把ISO文件简单地复制到光盘)。WINDOWS 7 用户可以双击ISO 文件。XP用户需要光盘烧录软件把ISO烧录成光盘。

5。关机。
现在你有了KNOPPIX LIVE CD,有了备份用的USB硬盘,就可以做计算机硬盘的备份了。


硬盘备份:

1。计算机启动前,插入USB备份硬盘。

2。用KNOPPIX LIVE CD 启动计算机(选择光盘启动)。
选择 11。 Graphical Programs -> Start1xde Full X Screen

3。启动后,点击桌面左下方的 PCMan File Manager(本步骤3至步骤6的目的是确定“源盘”和“的盘”)


File Manger 打开如下图所示。



4。点击左边的硬盘标识,寻找源盘。一般是容量大的。见到WINDOWS系统下常见的文件夹时,你可以确定源盘在KNOPPIX系统下如何识别的。从上图可见机器内装的硬盘是sda。

5。点击“BACKUP”硬盘,这就是“的盘”。一路点击到你所希望储存备份的文件夹。下图所示的文件夹都是我建的,如果你的备份硬盘是新的,那就没有文件夹也没有任何文件。你可以建文件夹,也可以不建。在这个例子中,我要把备份存入“/media/sdc1/S10-2”


6。复制你要储存备份的路径。具体做法是鼠标抓住(或叫HIGHLIGHT)“/media/sdc1/S10-2” - > Edit - > Copy

7。点击桌面左下方 Terminal emulator


Terminal emulator 打开如下:


8。在 Terminal emulator 输入:
dd if=/dev/sda of=/media/sdc1/S10-2/MYBACKUP.img bs=512k &

“of”跟随的路径可以粘贴上去的,在第六步时我们复制了路径。只要在“of=”后面点击鼠标的轮键即可。然后加上你想要的文件名。

解释一下指令:
“if” 是 input file 的意思,“if”跟随的文件名是位于/dev下的sda(UNIX 和 LINUX 把所有DEVICE 都看作是一个文件)。“sda”是我们在第四步中确定的源盘。

“of”是 output file 的意思。“of”跟随的是备份的文件及路径。这个例子中“MYBCKUP.img”的备份文件将被储存在/media/sdc1/S10-2文件夹内,sdc是那个被命名为“BACKUP”的外接USB硬盘。

bs 是 buffer space。我个人经验,大多数硬盘的最佳工作状态是一次读写512K。

& 是要计算机在后台执行指令。这样,不用等备份做完你的Terminal emulator 就可以解放出来了。


千万注意: “if=” 和“of=”所跟随的路径不可搞错。一搞混,你的系统就完了。

根据不同的计算机速度,源盘的大小,指令需要运行几个小时。如果你不关闭发指令的Terminal emulator,当指令运行完毕时,你会得到运行报告。

硬盘备份文件和源硬盘的容量相等。它是源盘完全一样的镜像。


硬盘复原:

不管因为什么原因,机器上的硬盘遭到破坏时,都可以用以下步骤恢复。

1。KNOPPIX LIVE Cd启动。

2。打开FILE MANAGER,点击你机器上的硬盘和备份硬盘。(点击硬盘,KNOPPIX会自动把备份硬盘载入系统)。记住两个硬盘的路径和文件名。sda 一般是机器上的硬盘。sdb 一般是外接USB硬盘。但也不一定,视系统上的硬件而定。)

3。打开Terminal emulator 输入:

dd if=/media/sdc1/S10-2/MYBACKUP.img of=/dev/sda bs=512k &

注意到了没有,和硬盘备份操作不同,复原时input file 跟随的文件和 output file 跟随的文件名反了个。原来的源盘成了现在的的盘,原来的的盘现在成了源盘。

这样的镜像复原很有用。即使机器上的硬盘砸坏了,你买一个新的,仍然可以恢复。

以后有空再介绍一个镜像备份时压缩空间的小窍门。尤其是如果源盘上未用空间很多的情况下,备份文件可以压缩到很小,省下很多“的盘”的空间。

Read more: dd: 穷人的硬盘备份与恢复工具 - 实用电脑 - 贝壳村 -

没有评论: