我们都知道在一些品牌计算机中都内置了恢复系统,使得用户在系统崩溃或重装时能快速的恢复到出厂状态或自备份状态。避免了重做系统要耗费很大精力和时间的问题。此外,面向初级用户该恢复系统的易用性使初级用户能更方便、准确地进行操作。比如我的 Thinkpad 笔记本就包含了 Rescue and Recovery 恢复系统,他被预装到一个隐藏受保护的分区中,通常这类分区我们都称之为“OEM 分区”,它可以将整个计算机恢复到出厂时的状态,其中包括了驱动、应用程序,甚至是分区。并且,我也可以创建自己的系统状态备份。很显然它是非常强大的,安全的,易用的。但是,其中也存在一些不足!如果我选择恢复到出厂状态那意味着我其他分区的数据将丢失,虽然他可以通过向导提前备份到其他存储位置。但是对于一些初级用户,这一重要的步骤也略显复杂。我发现有很多用户都会将这一功能从计算机中去除。但是也有一部分用户非常看好这类恢复系统,在 DIY 市场最常见的就是使用 Ghost 作的一键还原系统,而它我并不看好,毕竟它只包含在那些盗版 XP 安装光盘中,很难值得人们信赖!那么非品牌计算机难道就没有一套易用、安全、强大的恢复系统么?

        如果你之前有读过《深入解析 Windows Complete PC 备份》《通过 Windows AIK 创建 Windows RE 》这两篇文章,那么我想你应该知道今天的主角是谁,是的它就是 Windows Complete PC 和 Winodws RE。但是,我们会注意到 Windows Complete PC 只包含在部分 Windows Vista 版本中,我个人确实很难理解微软的这一产品决策,毕竟在使用 Business、Enterprise 的环境中通常都是使用集中网络化来部署操作系统的,那么单机还原机制就很少会用到。而有多少家庭或其他用户会购买 Ultimate 呢?!他们通常都会购买 Home Basic 或 Home Premium,即使是随机预装 OEM 的品牌机也都是以 Home 系列版本居多。看到这里,别灰心!虽然事实如此,但是并不是没有解决办法,我们可以使用用于操作 Windows Vista 安装映像的 Imagex.exe 工具来替代 Windows Complete PC,该工具包含在 Windows AIK 中,Imagex.exe 虽然使用命令行方式来操作,但是网上也有网友提供了图形化方式的 Imagex 插件。如果你是一个精通脚本技术或 BDD(最新版本是 MDT,中文全称是:商业部署加速器)的 ITPro,那么我们可以自己制作一个图形向导化的 Imagex 操作过程。有关涉及到 Imagex 命令的文章可以从我的个人博客中查找到。使用微软自身的产品优势不再复述,所以我为我的用户、朋友、亲属所推荐的单击恢复系统方案则会根据自身使用的 Windows Vista 版本不同来进行定制。这里需要注意,这两个解决方案都只是针对 Windows Vista 系统的,并且以 Windows RE 为操作环境,当然你也可以使用自定义的 WIndows PE 2.0(Vista PE)。但是,要使用 Windows Complete PC 恢复程序则需要作很多的自定义工作。此外,Windows RE 本身就是基于 Windows PE 2.0 的,而且还包含了众多 Windows Vista 的修复工具,所以 Windows RE 是我最终不二的选择。有关 Windows RE 的创建可以参考我前面提到的《通过 Windows AIK 创建 Windows RE 》这篇文章。

        那么接下来要考虑的就是这个恢复系统的安置问题,从帮助手册和网上相关的文章中我了解到,Windows RE 可以采用 WIM 文件方式安装到系统中,也可以将其部署到 OEM 分区中。前者的优点是安装步骤特别简单,但是整个恢复系统则会显不太可靠!后者虽然步骤繁琐些,但是在下面的演示中,大家会发现在 Windows Vista 时代,原来认为很难实现的技术,现在都变得那么简单(PS:这里,不得不对微软的 Windows Vista 竖起大拇指!)。而且,这种安装方式最大的一个特点是实现了恢复系统的安全性,因为部署在 OEM 分区中,初级用户或病毒很难侵入或破坏其中的恢复程序。

        手工创建 OEM 分区是一个令人振奋并感觉神奇不可思议的过程,起码我个人就感觉很兴奋。想想原来要实现他们是多么困难的事情,因为只有那些实力雄厚的计算机厂商才会预装这些功能。闲话少说,今天就让我引领大家来手工创建 OEM 分区并将 Windows RE 安装到 OEM 分区中。

        在开始之前,我们需要先做一些准备工作,首先要有一份 Windows RE,你可以制作成 CD,或保存在 U 盘,甚至是移动磁盘上。然后将部署 Windows RE 的相关文件(这里将名称定义为:Recovery)单独拷贝到一个位置上,这个存储位置可以在一个数据存储分区,或者是 U 盘,更或者是移动磁盘上。随自己方便就好,这里我事先将他拷贝到了我制作的 Windows RE 的映像文件中(WIM),这个实验中,Recovery 实际的位置是“x:sourcerecovery”。因为经过试验,在创建过程中要临时生成文件,所以如果是直接拷贝到 Windows RE 根目录下,并且是以 CD 方式来运行的,则会导致文件创建失败。此外,还需要注意一点的就是在操作过程中,程序还会调用 Imagex.exe 所以建议单独拷贝一份到拷贝到 Recovery 目录中。

        用于部署 Windows RE 和创建 OEM 分区的相关文件包含在 Windows AIK 中,具体路径是“C:Program Files\Windows AIK\Recovery”。

        以上准备工作完成后,就可以开始我们今天的旅程—— 创建 OEM 分区、将 Windows RE 安装到 OEM 分区中。

        如图所示,我当前系统系统下包含两个分区,一个系统分区(C:),另一个数据分区(E:)。这里我已经将事先制作好的 Windows RE 光盘放入了光驱。
1 

        接下来,我们要创建一个用于安置 Windows RE 的 OEM 类型分区。OEM 分区的制作流程与常见的分区类似,唯一不同的是要在最后标注磁盘 ID 类型。所以我们先通过 Windows Vista 自带的磁盘管理工具来实现无损分区操作。首先选中分区 E:,并单击鼠标右键,点击“压缩卷”,会启动无损分区操作向导。
2

        根据向导提示,输入要压缩的空间量,这里我输入的是 1536M,即 1.5G!之所以要分这么大,是因为 Windows Complete PC 要求要备份的分区最少保留 1G 的存储空间,如果采用 Imagex.exe 的方案,那么只需要分配不小于 512M 的分区即可!最后点击“压缩”。
3

        执行过程很快,在完成之后,我们会发现磁盘上多出了一部分未分配的可用空间。此外,我们发现分区 E: 上的数据完好的保留了下来。之后,我们选择该可用空间,鼠标右键单击“新建简单卷”,来创建 OEM 分区。(注意:从 Vista 开始,分区这一概念已经基本由卷来取代,默认每创建一个分区都是一个主分区,然后再创建卷!)
4

        根据向导一步步操作,在“分配驱动器号和路径”这一步中,一定要选择“不分配驱动器号和驱动器路径”。否则会导致 OEM 分区创建出现问题,具体表现为在 Windows RE 下是不可见的,而 Windows Vista 下即使是 OEM 分区类型,也仍会被自动分配上盘符,并且可以自由读写数据。
5

        在“格式化分区”这一步,选择以 NTFS 格式快速格式化,为了方便识别这个卷,则将卷标命名为“REcovery”。
6

        完成后,我们会在磁盘管理器中看到这个简单卷,为主分区,并且没有盘符。到这里,OEM 分区的创建并为真正完成,我们只是完成了 OEM 分区的准备工作,因为将分区标记为 OEM  类型后便无法读写里面的数据所以我们需要先将 Windows RE 安装到 OEM 分区后再执行 OEM 类型的标注。此外这一系列步骤都将在我制作的 Windows RE 环境下进行。
7

        为了继续旅程,我们重新启动计算机并使用 CD-ROM 中的 Windows RE 引导计算机。下图就是 Windows RE 启动后的界面,我们单击“命令提示符”来打开命令行环境执行接下来的步骤。
8

        由于接下来的操作步骤依靠 Windows AIK 中附带的 Recovery 脚本文件来执行,所以我们在执行前最好先搞清并记录下几个关键的信息。磁盘 ID 很简单,如果计算机上只有一个硬盘,则该硬盘的磁盘 ID 即为:0。之后我们要搞清 Recovery 所在分区的 ID 号,为此在命令行环境下键入 diskpart 启动进入分区格式化命令环境。
        查看磁盘,可以使用“list disk”。键入“sel disk 0”选择当前磁盘,之后键入“list partition”或“list volume”获取到 Recovery 所在的分区 ID。记录好这些信息后,键入“exit”退出 diskpart 环境,当然如果你对磁盘结构很了解,完全可以省略这些步骤。
9

        然后转到之前拷贝的 Recovery 文件所在目录,执行 Windows RE 的安装命令。命令格式如下:

X:\sourcerecovery>InstallWinRE.cmd /source f:SOURCEBOOT.WIM /target e:

        这个命令行就是通过 InstallWinRE.cmd 命令脚本将源路径下的 Windows RE 映像文件 boot.wim 文件释放到目标分区 E: 上,而这个分区 E: 就是之前创建的 OEM 分区,因为在进入 Windows RE 环境后,该系统会自动检测当前计算机上的硬盘和光驱并按照顺序分配盘符,这一个分配顺序与 Windows Vista 下有所不同。从前后几张截图中我们可以通过对比来发现。
10

        之后,使用 SetAutoFailover.cmd 命令脚本在 Windows Vista 启动文件中自动创建并添加启动 Windows RE 所需要的引导信息,并最终将该分区标记为 OEM 类型。其实该命令脚本就是先执行 BCDEdit 来创建引导信息,之后使用 Diskpart 来卸载 Windows RE 所在分区的驱动器号,并将其标记为 OEM 类型。注意:为了避免出现意外,强烈建议在执行前,先备份当前 Windows Vista 的引导文件。我们可以使用如下命令进行备份:

bcdedit /export c:vistaboot.bak

        SetAutoFailover.cmd 如果不附加执行参数将会自动以 Partition 1 为 Windows RE 所在分区,并执行 BCDEdit 过程,最终标记 Partition 1,这显示是不符合我当前的实验环境的,所以我们需要执行如下的命令行来指定我们的分区。

X:\sourcesrecovery>SetAutoFailover.cmd /target e: /disk 0 /partition 3

       
命令行格式很容易理解,我就不再做详细介绍。而之前让大家所记录的信息也就是用在这里。从图中我们可以看到 SetAutoFailover.cmd 所执行的详细信息。如果出现意外,没关系我们可以恢复之前备份过的引导信息,并手工将 OEM 分区类型(ID:27)标记为 MBR 类型(ID:07)。
11

        最后我们可以通过 diskpart 来进行确认,检查 OEM 当前的类型,从图中我们可以看到存储 Windows RE 的分区类型已经变成了 OEM。
12

        到这里整个操作过程就全部完成了。重新启动进入到 Windows Vista,我们可以看到先前创建的 OEM 分区消失了。在磁盘管理器中虽然能看到这个分区,但是我们无法对其进行操作,这使得 Windows RE 非常安全,也就保障了了恢复系统的可用性。
13

        当我们要进入这个 Windows RE 环境时只需要在启动 Windows Vista 前按“F8”键,在高级启动选项列表中选择“修复计算机”就可以启动进入到 Windows RE 环境中。
14

        有了这个 OEM 分区下的 Windows RE ,当遭遇到系统故障时我们可以使用自带的修复检测工具进行排错,也可以使用 Windows Complete PC 备份来恢复计算机,或者使用 imagex.exe 来备份或恢复我们的系统映像。当然,我们也完全可以制作一个个性化的 Windows RE 以备不时之需。而这个 Windows RE 不会轻易受到破坏!我想 Windows RE 一定能帮助你解决周边很多朋友、亲属、用户关于系统恢复的很多问题。有关 Windows RE 的应用,欢迎大家与我探讨。
Windows Client | 评论(12) | 引用(0) | 阅读(14458)
gOxiA Email Homepage
2009/04/26 21:17
to:新手,可以搜索一下关于Benq一键还原的有关信息看看是否有其他办法。
新手
2009/04/25 17:41
问题是我的是XP不是Vista,diskpart v6.1 版本无法运行,盘里的文档比较重要,有什么办法可以把它拷出来。
gOxiA Email Homepage
2009/04/25 12:09
to:新手,请使用 diskpart v6.1 版本,也就是 Vista 里的 diskpart.
新手了
2009/04/25 02:49
谢谢你这么耐心!

C:\Documents and Settings\BENQ>diskpart.exe
Microsoft DiskPart 版本 5.1.3565
版权所有 (C) 1999-2003 Microsoft Corporation.

DISKPART> sel disk 0
磁盘 0 现在是所选磁盘。
DISKPART> list partition
  分区 ###  类型              大小     偏移
  -------------  ----------------  -------  -------
  分区 1    主要                  10 GB    32 KB
  分区 2    扩展的                 20 GB    10 GB
  分区 3    逻辑                  20 GB    10 GB
  分区 4    OEM                 13 GB    30 GB
  分区 5    主要                  14 GB    42 GB
DISKPART> sel partition 4
分区 4 现在是所选分区。
DISKPART> set id=07
Microsoft DiskPart 版本 5.1.3565
ADD         - 将镜像添加到一个简单卷。
ACTIVE      - 将当前基本分区标记为活动启动分区。
ASSIGN      - 给所选卷指派一个驱动器号或装载点。
BREAK       - 中断镜像集。
CLEAN       - 从磁盘清除配置信息或所有信息。
CONVERT     - 在不同的磁盘格式之间转换。
CREATE      - 创建卷或分区。
DELETE      - 删除对象。
DETAIL      - 提供对象详细信息。
EXIT        - 退出 DiskPart
EXTEND      - 扩展卷。
HELP        - 打印命令列表。
IMPORT      - 导入磁盘组。
LIST        - 打印对象列表。
INACTIVE    - 将当前基本分区标记为非活动分区。
ONLINE      - 使当前标为脱机的磁盘联机。
REM         - 不起任何作用。用来注解脚本。
REMOVE      - 删除驱动器号或装载点指派。
REPAIR      - 修复 RAID-5 卷。
RESCAN      - 重新扫描计算机,查找磁盘和卷。
RETAIN      - 在一个简单卷下放置一个保留分区。
SELECT      - 将焦点移到一个对象。
DISKPART> detail partition
分区 4
类型  : FE
隐藏: 是
活动: 否
没有跟这个分区相关联的卷。
DISKPART>

先看看再说吧,分区4有重要数据,因为更新了笔记本修复程序,变成OEM盘,现在怎么办?
gOxiA Email Homepage
2009/04/23 15:16
tp:新手,如果你当前卷本身就是MBR类型那么你执行set id=07肯定不对.你具体遇到的提示什么?
新手
2009/04/23 13:04
我运行了diskpart.exe,在diskpart环境下,执行sel disk 0,sel partition 4,set id=07命令,最后一句(set id)没执行,显示了帮助列表,请教?
gOxiA Email Homepage
2009/04/23 10:07
to:新手,使用diskpart环境中的set id来进行修改.
新手
2009/04/22 20:59
怎样才能手工将 OEM 分区类型(ID:27)标记为 MBR 类型(ID:07),怎样写标注命令?谢谢!
gOxiA Email Homepage
2008/11/01 20:51
to:新手,如果建立好了WinRE,那么可以参考http://goxia.maytide.net/read.php/1065.htm通过Complete PC来进行备份或恢复。“修复计算机”功能不可用应该是BCD文件被修改,建议参考此篇文章先将OEM标注为标准分区,之后使用SetAutoFailover.cmd来进行修改添加。
新手
2008/11/01 18:42
Vista Home被我升级到Vista Ultimate后,“修复计算机”功能不能用了,查看到有隐藏分区OEM,要怎么恢复“修复计算机”选项功能?请教高手
分页: 1/2 第一页 1 2 下页 最后页
发表评论
昵称 [注册]
密码 游客无需密码
网址
电邮
打开HTML 打开UBB 打开表情 隐藏 记住我