本文的所有操作都需要在Windows PE下进行。虽然这可能没有在DOS环境下方便,不过用Windows PE取代DOS已经是一个必然的趋势,同时,Windows PE环境也使imagex的适用范围更广。
我们都知道,传统的基于磁盘扇区的映像工具一般只能在Windows操作系统之外运行,因此都使用了专用的恢复环境,例如软件开发商提供的特殊 版本的 DOS。但这就存在一个问题,主要是关于存储子系统的。现在我们使用的存储子系统规格越来越多,除了传统的 IDE,常见的还有SCSI、SATA,以及各种级别的RAID等,如何让映像工具支持这些不常用的存储子系统成了一个最大的问题。
以使用DOS作为恢复环境的映像工具为例,如果该工具没有自带用于RAID系统的DOS驱动程序,那么就无法使用它对RAID系统创建和恢复映 像。但 imagex解决了这一问题,它的恢复环境是Windows PE,这可以看作是一个省略了图形界面的Windows内核,因此任何磁盘子系统,只要提供了Windows下的驱动程序,就可以用于Windows PE。
使用过程中大家可能会注意到,用Windows PE光盘引导计算机,进入Windows PE环境之前,屏幕上首先会显示“Press F6 to Install…”的字样,这和我们直接用光盘安装Windows操作系统时的选项类似。如果您使用了一些比较不常用的存储子系统,例如SCSI或者 RAID,就需要在这个界面上按下F6,然后提供所需的驱动程序,这样引导后Windows PE才可以识别出您的硬盘。
下文中,实验所用系统的设置如下:C盘安装操作系统,D盘是光驱,E盘用于保存创建的映像文件。不过当我们用Windows PE光盘引导计算机后情况有所变化,C盘依然是系统盘,但光驱成了X盘,Windows下的E盘成了Windows PE环境下的D盘。因此为了避免混淆,在Windows PE环境下的操作将会使用PE中的盘符名称,但在Windows环境下的操作将会使用Windows中的盘符。
创建映像
首先我们需要准备一台模板计算机,在这台计算机上安装打算批量部署的操作系统,并安装所有需要的驱动程序、应用软件、系统更新程序,同时我们还 可以根据实际需要对系统和程序的各种选项进行设置。设置完成之后运行sysprep.exe删除所有不必要的信息 ,并关闭计算机。
进行到这一步的时候,和使用传统的基于分区的影响工具部署都没有太大区别,不过接下来我们要使用微软自己的映像工具了。
假设我们希望使用默认设置创建一个C盘的映像,映像文件将以data.wim为名保存在D盘根目录下,并在创建完成后进行数据校验,那么我们可以使用这样一个命令:
imagex /capture c: d:\data.wim "Drive C " /verify
“/capture”参数的作用是创建映像文件,而该参数后面的“c:”则指定了要创建映像的目标分区。“d:\data.wim”这个参数指 定了镜像文件的保存位置以及名称,“Drive C”参数定义了映像文件的描述,需要用引号引用。最后的“/verify”参数则会让imagex创建完映像之后进行校验。当看到图1所示的界面时,表示 我们的命令是正确的,程序正在创建C盘的映像。当屏幕显示“Successfully imaged c:\”的字样时表示映像已经创建完成了。
当然,imagex能做到的还有很多。有时我们可能会希望尽量减小生成的映像文件的体积,这时候就可以用到imagex的压缩功能了。压缩参数有两个选项:Fast和Maximum,其中后者的压缩率更高一些,当然花费的时间也要长一些。还是上面的例子,如果需要以Maximum等级压缩创建出来的映像文件,可以使用这条命令:
imagex /compress maximum /capture c: d:\data2.wim “Drive C” /verify
遗憾的是该参数只能在创建映像文件的时候使用,对于已经创建好的映像文件,已经无法通过该参数进行压缩,或者更改压缩等级了。
拆分映像
如果您希望将创建出来的映像文件按照一定大小拆分,以便刻录到光盘或者保存到其他可以动存储介质上,那么可以使用imagex的 “/split”参数。例如,如果我们希望将之前创建的data.wim文件以640 MB为大小拆分,以便刻录到CD光盘上,那么可以使用这条命令:
imagex /split d:\data.wim d:\datasplited.swm 640
该操作将会创建一系列带有固定编号的.swm文件,例如我们要拆分的文件是data.wim,那么拆分后的文件就是data1.swm、 data2.swm等。该参数同样有些不足:首先,无法在创建映像文件的时候使用,只能在映像文件创建成功之后使用。另外,拆分的文件大小是以MB为单位 指定的,如果我们需要以GB为单位拆分文件以便刻录DVD光盘上,显得不够灵活。
应用映像
我们已经创建好了系统映像文件,日后如果需要在多台计算机上部署,或者某台计算机的系统崩溃,就可以使用创建好的映像文件来恢复。恢复过程是非常简单的,依然需要进入到Windows PE环境下,然后使用“/apply”参数运行imagex.exe程序即可。
对于新计算机有一点需要注意,在使用imagex安装操作系统映像之前,必须首先给硬盘分好区。您可以使用Windows PE自带的分区工具diskpart.exe进行。而如果您嫌麻烦,或者需要处理的计算机太多,也可以自己编写脚本,让Windows PE启动后自动进行分区操作。
假设我们要把之前创建的保存在D盘的data.wim文件重新恢复到C盘,那么可以首先格式化C盘,然后使用这条命令:
imagex /apply d:\data.wim 1 c: /verify
除了上面介绍的功能,imagex还有很多功能可以适合不同情况。同样,下文将会通过几个具体的实例向您介绍。
文件附加
有时我们可能会遇到这样的情况:当我们安装好操作系统之后,需要创建一个映像文件;而安装完补丁程序以及驱动程序之后,需要创建另外一个映像; 等安装完所有其他需要的应用程序,并进行过必要的设置之后,还需要创建第三个映像文件。这样的要求有一个特点,那就是三个映像文件中大部分数据都是相同 的,而每次都是只有部分文件被增删或者更改。那么按照一般的做法,直接创建三个各自独立的映像文件,无疑浪费了大量的存储空间,而且映像文件太多也不利于 日后的管理。
为了解决这个问题,imagex中包含了一个叫做附加的功能。简单来说,该功能可以在一个映像文件中保存多个不同状态下的操作系统镜像。例如之 前设想的情况,将操作系统在三个时候的不同状态全部附加到同一个映像文件中,这样,因为操作系统中有大量三个状态下没有发生任何更改的文件,因此这些文件 实际上在映像文件中只需要保存一个实例,这就可以在压缩的基础上更进一步减小映像文件的体积。
注意,这里提到了两个名词:“映像”和“镜像”。为了方便叙述,下文对这两个名词的定义如下:对操作系统所在分区进行“复制”创建的文件称之为“镜像”,而多个“镜像”附加在一起即形成一个“映像”。
在上文的操作中我们已经对整个系统盘创建了一个完整映像data.wim,假设当时我们只是安装了操作系统,还没有装驱动和应用程序,那么现在 我们可以启动到正常Windwos状态下,按照需要安装所有的驱动和程序,然后重启动计算机到Windows PE环境(别忘了运行sysprep.exe)。要创建新的镜像,并附加到现有的映像文件中,可以使用下列命令:
imagex /append c: d:\data.wim “Drive C 2” /verify。
“/append”的作用是将目标分区附加到现有文件,需要注意,如果已经使用了“/append”参数,就不需要同时使用“/capture”了。而后面的“d:\data.wim”则指定了要被附加的文件所在位置和名称。
imagex的某些选项可以由配置文件指定,这样我们就可以预先编写好配置文件,然后一次执行,实现比较复杂的操作。要指定配置文件,需要以“/config”参数启动imagex。配置文件中主要有三个字段,各自的含义如下。
[ExclusionList]
定义了使用“/capture”参数后被排除的文件和文件夹名称
[CompressionExclusionList]
定义了不被压缩的文件或文件夹名称,或者文件类型。这里可以使用通配符
[AlignmentList]
指定文件以64K为范围排列,这些文件将不会被压缩,而压缩后的文件将会以32K为范围排列。
我们只需要在文本编辑器,例如Windows记事本中按照上述规定的字段编写内容,然后将文件保存为.ini格式,就可以在使用imagex.exe的时候通过“/config”参数调用了。
打开Windows记事本或者其他任何文本编辑器,分别输入[ExclusionList]、[CompressionExclusionList]和[AlignmentList]三个字段,然后按照需要为这三个字段设定内容。
例如,如果我们希望在创建映像文件的时候跳过分页文件和休眠文件,那么就可以在[ExclusionList]字段下添加这两个文件的名称: “Hiberfil.sys”和“Pagefile.sys”。注意,每个文件要占用一行空间。如果我们希望在压缩文件的时候取消对所有扩展名为.zip 的文件的压缩(毕竟它们已经被压缩过了,再次压缩只能延长所需时间,体积的变化不会太明显),那么可以在 [CompressionExclusionList]字段下添加“*.zip”这一行内容。
我们已经了解了如何创建和应用映像文件,那么日常维护方面,这种新的文件格式又能带给我们什么?需要注意,之前介绍的所有操作都是使用imagex在Windows PE的命令行环境下运行,而接下来要介绍的一些功能在正常的Windows模式下就可以操作。
查看映像文件信息
我们首先继续讨论一下前文中存在的一个问题,对于附加了多个镜像的映像文件,可以通过添加编号的方式指定对哪个镜像进行操作。但是一旦时间长了,我们如何知道某个映像文件中有几个镜像,分别是什么内容?这就要用到imagex的另一个参数“/info”了。
还是以上文创建的附加了多个镜像的映像文件data.wim为例,在Windows PE环境下,运行这样的命令:imagex /info d:\data.wim,我们可以看到,程序会自动显示一个以XML格式保存的文件,文件的内容就是该映像文件中所有附加的镜像文件的信息(图3)。这里 面大家可以留意看“”这一字段的内容,这其实就是我们在使用 “/capture”参数创建映像时输入的描述。因此在使用的时候要注意输入详细的描述信息,方便日后的使用。
查看映像文件内容
随着使用时间的延长,管理员们可能需要管理越来越多各种用途的映像文件。如何快速从多个映像文件中找到自己的目标就显得非常重要。通过使用 imagex的 “/dir”参数,我们就可以直接把某个映像文件,甚至具体到其中附加的某个镜像的内容显示出来。该参数的使用方法是这样的:imagex /dir d:\data.wim 1。
本文来源:未知 作者:佚名