给Vista系统加入一键还原功能

互联网 | 编辑: 潘翔城 2007-09-19 00:30:00转载 返回原文

给Vista系统加入一键还原功能(1)

很多朋友都喜欢用《还原精灵》、《一键Ghost》等一键还原软件,这样在系统遇到故障的时候就可以快速还原。不过这些软件在Vista中却无法使用,因为Vista采用了全新的启动方式。其实只要稍加动手,我们可以手动为Vista添加“一键还原”启动菜单。这里以预装Vista单系统的品牌机为例说说如何添加这个功能。另外,对于XP+Vista双系统的用户,原来安装在Windows XP中的还原软件在XP下仍然可以使用。

小知识:Vista和Windows XP/2000的引导区别。

Windows XP/2000/2003引导时是首先读取Boot Sector后加载NTLDR(引导文件,用来解析Boot.ini文件),然后开始普通的Windows加载,通过Boot.ini加载启动菜单进入不同的系统。

而Windows Vista 引入了全新的Boot Manager(启动管理器)和Boot Configuration Data(BCD,引导文件)的概念。系统引导顺序变成POST (系统自检)→BIOS读取MBR→找到硬盘分区表中Active的分区→读取Boot Sector→加载BOOTMGR (Boot Manager),Boot Manager读取BCD信息然后列出启动菜单,接着 BOOTMGR将控制权交给Vista系统目录下的Winload.exe,然后启动系统,并开始核心加载。如果是XP+Vista双系统,加载BOOTMGR后把控制权交给Ntldr加载,然后启动XP。

方法一:给Vista装一个虚拟软驱

一键还原条件:电脑至少有一个FAT32的分区、已经用过Ghost备份了Vista的系统镜像beifen.gho

一键还原工具:Ghost+Vfloppy

一键还原是借助Ghost的批处理在DOS下完成还原操作,在Vista下无法安装DOS,我们可以通过Vfloppy安装虚拟软驱使用DOS。

第一步:由于Vfloppy添加虚拟启动要通过Boot.ini加载,Vista下没有该文件,我们要手工建立这个文件。启动记事本输入下列代码,然后保存为boot.ini,放置在C:。

[boot loader]

timeout=6

default=multi(0)disk(0)rdisk(0)partition(1)windows

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)windows="windows xp professional" /NOEXECUTE=OPTIN /FASTDETECT

第二步:同上,启动记事本输入下列代码保存为hf.bat批处理文件,放置在FAT32分区如D盘下,用于自动恢复系统:

C:ghost.exe -clone,mode=pload,src=C:beifen.gho:1,dst=1:1 -sure -rb

命令的意思是运行D盘下的ghost.exe,把D盘下的beifen.gho恢复到第一分区(C盘),这里需要先使用Ghost将系统备份到d:beifen.gho,同时要把Ghost.exe先放置在d:下。

注意:由于Vista安装分区C盘为NTFS,DOS下D的盘符就是C:,这里一定要注意批处理命令中盘符的书写。

第三步:下载Vfloppy后将其解压到d:,到http://zj.onlinedown.net/down/winima70.exe下载WinIamge,然后使用WinIamge打开Vfloppy的“BOOTDISK.img”文件,在WinIamge窗口将AUTOEXEC.BAT拖到d:并保存。

第四步:用记事本打开“d:AUTOEXEC.BAT”,找到“echo The diagnostic tools were successfully loaded to drive %RAMD%.”这行,在“echo.”下添加下面一行内容(如图1):

call c:hf.bat

命令的意思是启动到DOS后,调用上面制作的批处理恢复系统,编辑完成后将文件拖回WinIamge窗口的“BOOTDISK.img”替换原文件。

第五步:右击Vfloppy.exe选择“以系统管理员身份运行”,映像文件选择修改过的“bootdisk.img”,显示文本为“DOS”(不要使用中文字符,否则在Vista启动管理器会出现乱码)。单击“应用”,程序提示引导映像文件成功即可。

第六步:按提示重新启动后,在Vista启动管理器中就会出现“DOS”启动项,选择它后进入DOS就可以自动恢复Vista了(如图2)。

这里我们借助Vfloppy在Vista下安装上DOS,然后通过WinIamge编辑DOS的自动批处理文件实现自动还原系统。如果你的系统全部是NTFS分区,也可以使用WinIamge编辑“BOOTDISK.img”文件,把Ghost.exe拖到“BOOTDISK.img”中(最好是8.3版,可以识别NTFS分区)。启动到DOS后,在提示符下输入“ghost.exe”启动程序手动进行还原。

提示:如果要卸载虚拟DOS,把c:boot.ini、c:boot目录下的bootdisk.img、BOOTDISK.dsk、bootdisk.bin删除即可。

给Vista系统加入一键还原功能(2)

方法二:手动给Vista添加启动菜单

一键还原条件:同上,适用Vfloppy无法成功加载虚拟DOS

一键还原工具:ghost+Avlgomgr

上述方法虽然方便,不过经测试,可能是由于Vfloppy的缺陷,在有些电脑上选择“DOS”进入后无法成功加载虚拟DOS。如果遇见这样的情况,我们可以编辑BCD文件,然后借助稳定的Grub引导进入DOS。

第一步:操作同“方法一”的“第四步”,使用WinIamge编辑Bootfisk.img并将修改过的文件放置在d:。接着“以系统管理员身份运行”Avlgomgr.exe,勾选“虚拟磁盘”,单击“浏览”按钮,镜像文件选择“d:boodisk.img”,单击“装配”,把虚拟镜像添加到系统(如图3)。

小提示:使用Avlgomgr.exe无须制作boot.ini文件,它会自动生成该文件。

第二步:单击“开始”,在搜索框输入“cmd.exe”,然后在搜索结果找到“cmd.exe”,右击选择“以系统管理员身份运行”,打开命令提示符后依次输入下列命令添加启动项:

1.bcdedit /store c:bootbcd /create /d "GRUB" /application bootsector

新建一个用bootmgr加载的启动项,项目名称为“GRUB”,运行上述命令后,系统会提示“The entry {99f6bb26-5e10-11dc-b804-0016176c84e5} was successfully created.”,其中的“{99f6bb26-5e10-11dc-b804-0016176c84e5}”是系统返回的标识符,每个人电脑不同,记住这个字符,然后把下列命令中的{ID}替换为返回的标识符(如图4)。

2.bcdedit /store c:bootbcd /set {ID} device boot

设置当前活动分区作为启动设备

3.bcdedit /store c:bootbcd /set {ID} path Avldr.bin

设置启动扇区路径和文件名,这里将Avlgomgr.exe生成的avldr.bin作为启动扇区文件

4.bcdedit /store c:bootbcd /displayorder {ID} /addlast

加入以上设置项目添加到BCD配置文件中

第三步:重新启动后在Vista启动管理器就会出现“GRUB”启动项,选择它即可引导到DOS自动恢复系统,进入系统后可以把程序自动生成的c:boot.ini删除。

小提示:对于不习惯使用bcdedit命令编辑BCD文件的朋友,他们可以先按方法一添加启动,如果Vfloppy启动出现故障,可以“以系统管理员身份运行”启动Avlgomgr.exe,镜像文件选择“c:bootboodisk.img”,单击“装配”,然后在启动管理器菜单选择“Avlgo - BOOTDISK.img”进入DOS即可(启动项名称可以打开c:boot.ini编辑修改)。

通过Vfloppy可以自动更改启动扇区,不过它的启动方式有BUG。这里借助Avlgomgr.exe加载虚拟DOS镜像bootdisk.img (装配后它会在系统盘根目录下生成avldr.bin启动扇区文件),而且使用bcdedit将启动项添加到BCD文件,可以稳定启动DOS。如果要卸载手动生成的启动项,在命令提示符下输入“bcdedit”获取增加的“grub”项的标识符,再输入“bcdedit /delete {ID}”即可,这里的{ID}是执行bcdedit后返回的标识符。

使用上面的方法添加一键还原后,我们只要在开机后选择新增的启动菜单就可以快速还原Vista了。为了方便以后使用,强烈建议添加启动菜单后再制作系统Ghost镜像。

返回原文

本文导航

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑