磁盘克隆软件的出现是操作系统部署技术的一大进步。有了磁盘克隆软件,你只要先配置一台参考机器,安装好操作系统和各种应用软件,然后为该系统创建磁盘内容的二进制映像,就可以把整个系统复制到其他机器上。有些克隆工具甚至能够通过网络“广播”映像,让多台PC同时从源机器接收磁盘映像。

  对于许多人来说,磁盘克隆工具是快速装机必不可少的法宝之一,但这并不证明现有的磁盘克隆工具已经完美无瑕,其中人们最为关注的问题是安全和机器唯一性(即SID重复)问题。为此,微 软提供了一个Sysprep.exe工具,即所谓的系统准备工具(System Preparation Tool)。Sysprep的目标不是取代磁盘克隆工具,而是为磁盘克隆过程保驾护航。

 

  一、磁盘克隆及其存在的问题

 

  常规磁盘克隆工具面临的问题主要表现在两方面。首先,这些工具要求参考机器(用来创建磁盘映像的机器)和目标机器(通过接收磁盘映像的方式安装系统的机器)有着差不多完全相同的硬件配置,否则,克隆得到的机器启动时很可能出现蓝屏故障。

 

  第二,更重要的是,对于Windows XP/2000和NT,磁盘克隆软件会带来严重的安全问题。安装这些操作系统时,安装程序会给系统设置一个唯一的SID(安全ID)。由于磁盘克隆软件是在操作系统被设置SID之后克隆参考机器的磁盘映像,目标机器将拥有和参考机器同样的SID。

 

  为什么同样的SID会带来安全问题呢?这是因为,Windows XP/2K/NT都要把唯一的SID关联到本地用户帐户。如果两台机器拥有同样的SID,在这两台机器上创建的用户帐户也拥有同样的SID。这样,对于Windows来说,两台机器上的用户帐户完全一样。例如,假设销售部门和会计部门的机器基于同一个磁盘映像,两个部门都在自己的机器上创建了一个本地的administrator帐户,这时,对于会计部门本地用户可访问的所有资源,销售部门同样也会获得访问权限。

 

一些磁盘克隆软件提供了针对SID重复问题的解决方案——SID修改工具,用来在克隆后的机器上修改SID。然而,这种事后修改SID的办法很容易遗留一些问题,例如许多工具未能正确、全面地更正注册表和文件系统中引用的SID。

  Sysprep采取了不同的策略。即使参考机器上已经安装了各种应用软件,Sysprep也能够把机器退回到设置SID之前的状态,确保系统SID的唯一性。在参考机器上运行Sysprep后,第一次重新启动时,参考机器将回到Windows安装过程最后阶段的状态,即指定机器和网络标识符的状态,机器的SID就是在这个时候设定。(因此,强烈建议不要在担负关键任务的机器上运行Sysprep。)

 

  针对Windows NT/2000/XP三种操作系统,Sysprep也相应地有三个版本。Sysprep 1.0用于NT,Sysprep 1.1用于Win 2K,Sysprep 2.0用于Win XP,三者都是免费的。本文主要介绍Sysprep 1.1和Sysprep 2.0,

 

  二、Win 2K版的Sysprep

 

  Sysprep 1.1可以从微软网站下载,或者从Win 2K安装CD的deploy.cab文件(/support/tools目录)获取。

 

  用Sysprep 1.1复制和部署Win 2K系统包括八个步骤:

 

  ⑴ 在参考机器上安装Win 2K和各种应用软件。不要将系统加入到任何域,将本地Administrator帐户的密码设置为空白。

 

  ⑵ 检查系统配置,清除所有在磁盘映像文件中不必出现的文件。

 

  ⑶ 在参考机器的C盘根目录下,创建一个Sysprep目录。

 

  ⑷ 从CD的/support/tools/deploy.cab文件提取出sysprep.exe和setupcl.exe文件。如果要用sysprep.inf应答文件,把sysprep.inf文件也复制到sysprep目录下。

 

  ⑸ 在参考机器上运行sysprep.exe,为复制磁盘作准备。

 

  ⑹ 用磁盘克隆软件复制参考机器的磁盘分区。

 

  ⑺ 用磁盘克隆软件把参考机器的磁盘映像部署到目标机器。

 

  ⑻ 重新启动目标机器,根据安装向导的提示完成最后的安装步骤。

 

Sysprep 1.1提供的命令行选项主要包括: ⑴ quiet:禁止显示要求用户确认下一步操作的提示信息,免去用户的应答之劳。例如,假设安装过程是无人值守的,且希望在安装之后立即运行sysprep.exe,只要在sysprep.inf文件的[GuiRunOnce]节加入“sysprep -quiet”命令就可以了。 ⑵ pnp:下一次重新启动时,强制刷新即插即用硬件。强烈建议使用该参数。(但在XP系统上,建议只有当系统包含传统的非PnP设备时才使用pnp参数。如果系统只包含PnP设备,则不要使用pnp参数,因为此举只会不必要地增加启动时间)。 ⑶ reboot:强制机器重新启动。根据指定的选项,或者显示“最小安装向导”,或者以“工厂模式”启动。主要用于测试系统,确认第一次启动会按照预定的方式进行。 ⑷ nosidgen:不生成新的SID。如果不准备复制正在运行Sysprep的机器,或者正在为安装域控制器(DC)作准备,则应当使用该参数。

  按照通常的方式使用Sysprep存在一个缺点,这就是必须手工回答“最小安装向导”的提问。要提高Sysprep部署过程的自动化程度,可以使用一个应答文件来自动回答向导的问题。默认的Sysprep应答文件是sysprep.inf,与典型的无人值守安装应答文件相比,sysprep.inf只用到了前者内容的一个子集。sysprep.inf可以和sysprep.exe、setupcl.exe一起放在c:/sysprep目录下,也可以放在软盘上。如果放在软盘上,则应当在Windows启动屏幕出现之后、“请等待最小安装向导”屏幕出现之前插入软盘。

 

  Sysprep应答文件不是一个非有即无的二元选择。如果应答文件缺少一节或多节内容,第一次系统重新启动时向导会显示相应的对话框,要求用户输入。因此,如果要实现全自动的无人值守部署,应注意全面地输入sysprep.inf应答文件各节的内容。表一列出了与向导各个窗口对应的sysprep.inf参数及其示例(有时,对于一个特定的向导窗口,sysprep.inf可能有多个节允许包含对应的值)。

 

 

表一

最小安装的对话框提示

绕过对话框所需的项和值

欢迎

[GuiUnattended]
OEMSkipWelcome = 1

Microsoft 许可协议

[Unattended]
OemSkipEula = Yes

区域设置

[GuiUnattended]
OemSkipRegional = Yes

用户名和公司

[UserData]
FullName = <用户名称>
OrgName = <单位名称>

计算机名和管理员密码

[UserData]
ComputerName = <计算机名称>
[GuiUnattended]
AdminPassword = *

域成员身份

[Identification]
JoinWorkgroup = <工作组名称>

网络设置

[Networking]
InstallDefaultComponents = Yes

服务器许可(仅用于工作站)

[LicenseFilePrintData]
AutoMode = PerServer
AutoUsers = 5

时区选择

[GuiUnattended]
TimeZone = 8

产品标识号

[UserData]
ProductID = <产品标识>





三、Win XP版的Sysprep

  XP版的Sysprep包含在XP安装CD的/support/tools/deploy.cab文件中。Sysprep 2.0的基本功能和用法与 Win 2K版相同,主要的改进之一是能够在安装映像中加入新的(或升级的)驱动程序。XP版的Sysprep还新增了几种操作模式,分别是:Factory,Audit,Reseal,和Clean。这几种模式主要针对OEM设计,但对于企业用户也可能有用。

  ⑴ Factory模式。工厂模式是为OEM设计的模式,允许在工厂环境中通过BoM文件(Bill of Materials)定制Windows安装过程。

  ⑵ Audit模式:主要用来在XP系统上运行审计和测试工具。Audit模式提供了一次系统重新启动的机会(在Factory模式的定制操作完成之后),这对于完成OEM在Factory模式下进行的软、硬件安装过程来说可能是必需的。

  ⑶ Reseal模式:这种模式和Factory模式搭配使用。OEM在Factory模式下完成必要的修改,在把系统提供给客户之前调用Reseal模式。在Reseal模式中,OEM可以指定用户第一次启动机器时,看到的是XP新式的启动欢迎屏幕,还是“最小安装向导”(用Sysprep复制的Win 2K第一次启动时出现的安装向导),分别通过-msoobe或-mini参数指定。

  ⑷ Clean模式:安装过程结束后,Sysprep清除所有当前系统中实际不存在的设备信息。

  关于这四种模式的更多信息,请参见XP安装盘/support/tools目录下DEPLOY.cab中的ref.chm帮助文件。

  XP版的Sysprep增加了许多命令行参数,除了前面介绍的,另外主要包括:

  ⑴ activated:要求Sysprep不要重置Windows产品激活期限。

  ⑵ forceshutdown:Sysprep处理结束后,关闭机器。主要针对BIOS具有ACPI(Advanced Configuration and Power Interface)功能的机器,这些机器不能用 Sysprep 的默认方式关闭。

  ⑶ noreboot:修改系统注册表值(例如SID、OemDuplicatorString等),但不重新启动,也不为复制作准备。此选项主要用于测试,特别是查看对注册表的修改是否正确。由于它可能使 Sysprep的预安装无效,因此不建议随意使用该选项。

  总之,对于经常要通过磁盘克隆方式安装Win XP和Win 2K的用户来说,Sysprep是一个很有用的工具。Sysprep补充和完善了克隆工具,避免了克隆过程中由于唯一性信息的重复可能导致的安全问题。

本文分步描述了如何使用系统准备工具 (Sysprep) 来自动实现 Microsoft Windows XP 的成功部署。Sysprep 是一个为系统管理员、原始设备制造商 (OEM) 以及其他必须在多台计算机上自动部署 Windows XP 操作系统的人士设计的工具。在一台计算机上执行初始安装步骤后,可以运行 Sysprep 工具来准备用于克隆的示范计算机。

  

 

 

 

 

 

用Sysprep自动实现XP成功部署

一、运行 Sysprep 工具的要求

  要使用 Sysprep 工具,计算机的硬件和相关设备必须满足下列要求:

  1、 参考计算机和目标计算机必须具有兼容的 HAL。例如,基于高级可编程中断控制器 (APIC) 的 MPS(多处理器系统)必须使用相同的 APIC HAL。基于标准 HAL 可编程中断控制器 (PIC) 的系统与 APIC HAL 或 MPS HAL 都不兼容。

  2、参考计算机和目标计算机必须具有相同的高级配置和电源界面 (ACPI) 支持。

  3、参考计算机和目标计算机上的即插即用设备(如调制解调器、声卡、网络适配器和视频卡)不是非得来自同一个制造商。但是,必须提供这些设备的驱动程序。

  4、第三方磁盘映像软件或磁盘复制硬件设备是必需的。这些产品可创建计算机硬盘的二进制映像,并将该映像复制到另一个硬盘或存储到单独磁盘上的文件中。

  5、目标计算机上的硬盘大小必须至少与参考计算机上的硬盘大小相同。如果目标计算机上的硬盘较大,则主分区中不包括这一差别。但是,如果主分区是使用 NTFS 文件系统进行格式化的,则可以使用 Sysprep.inf 文件中的 ExtendOemPartition 项来扩展主分区。

  二、准备一台参考计算机以用于 Sysprep 部署

  要准备一台参考计算机以用于 Windows XP 中的 Sysprep 部署,请按照下列步骤操作:

  1、在参考计算机上,安装此操作系统以及任何希望安装在目标计算机上的程序。

  2、单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。

  3、在命令提示符处,转到驱动器 C 的根文件夹,然后键入 md Sysprep。

  4、将 Windows XP 操作系统光盘插入正确的 CD-ROM 或 DVD-ROM 驱动器中,然后打开 /Support/Tools 文件夹中的 Deploy.cab 文件。注意:为确保使用的是 Service Pack 的正确版本的 Deploy.cab 文件,请使用随此 Service Pack 分发的 Deploy.cab 文件。请访问下面的 Microsoft 网站以下载正确版本的 Service Pack:

  http://www.microsoft.com/downloads/search.aspx?displaylang=zh-cn (http://www.microsoft.com/downloads/search.aspx?displaylang=zh-cn)

  5. 将 Sysprep.exe 文件和 Setupcl.exe 文件复制到 Sysprep 文件夹中。注意:如果使用 Sysprep.inf 文件,还应将该文件复制到 Sysprep 文件夹中。为了使 Sysprep 工具正常运行,Sysprep.exe 文件、Setupcl.exe 文件和 Sysprep.inf 文件都必须在同一个文件夹下。

  6. 取出 Windows XP 操作系统光盘。

  7. 在命令提示符处,键入 cd Sysprep 以转到 Sysprep 文件夹。

  8. 要运行 Sysprep 工具,请在命令提示符处键入以下命令:

  Sysprep /optional parameter

  注意:要查看参数列表,请参见“Sysprep 参数”一节。如果从 %systemdrive%/Sysprep 文件夹运行 Sysprep.exe 文件,则 Sysprep.exe 文件会在运行结束后删除整个文件夹及其内容。

  9. Microsoft 建议您在参考计算机上运行 Sysprep.exe 文件后,将参考计算机从本地网络中隔离出来,随后在该本地网络中部署映像以避免任何 NetBIOS 冲突。这将允许 Sysprep 工具完成安装程序,加入指定的域,并使用在 Sysprep.inf 应答文件中指定的新计算机名。

  三、创建 Sysprep.inf 应答文件

  Sysprep.inf 应答文件是一个文本文件,它将针对一系列图形用户界面 (GUI) 对话框的应答编成脚本。要创建 Sysprep 工具所使用的 Sysprep.inf 应答文件,可以使用文本编辑器,或者使用包含在 Windows XP 光盘上并且同时包含在 Microsoft Windows XP Resource Kit 中的安装管理器工具。必须将应答文件重命名为 Sysprep.inf,并将它放在安装 Windows XP 的驱动器的根目录下的 Sysprep 文件夹中,或者可以将这些文件放在软盘上。如果 Sysprep 文件夹的名称不同,安装程序将忽略它。这里没有指定最小化安装向导应答文件的参数。

  1、Sysprep.inf 应答文件格式及参数

  Sysprep.inf 应答文件格式和参数与 Windows XP 的 Unattended.txt 文件相同,但是只支持下列部分和参数:

 

[Unattended]
  ExtendOemPartition
  OemPnPDriversPath
  OemSkipEula
  InstallFilesPath
  KeepPageFile
  ResetSourcePath
  UpdateHAL
  UpdateUPHAL
  UpdateInstalledDrivers
  TapiConfigured
  [GuiUnattended]
  AdminPassword
  Autologon
  AutoLogonCount
  OEMDuplicatorString
  OEMSkipRegional
  OEMSkipWelcome
  TimeZone
  [UserData]

  支持与 Unattend.txt 文件相同的条目集。

  [LicenseFilePrintData]

  支持与 Unattend.txt 文件相同的条目集。

  [GuiRunOnce]

  支持与 Unattend.txt 文件相同的条目集。

  [Display]

  支持与 Unattend.txt 文件相同的条目集。

  [RegionalSettings]

  支持与 Unattend.txt 文件相同的条目集。

  [Networking]

  支持与 Unattend.txt 文件相同的条目集。

  [Identification]

  支持与 Unattend.txt 文件相同的条目集。

  [TapiLocation]

  [Sysprep]

  自动生成 [SysprepMassStorage] 部分中的条目。

  [SysprepMassStorage]

  允许使用具有不同海量存储设备的计算机上的相同映像。

  2、使用安装管理器工具创建 Sysprep.inf 应答文件

  要安装“安装管理器”工具并创建应答文件,请按照下列步骤操作:

  1)、打开“我的电脑”,然后打开 Windows XP 光盘上的 Support/Tools 文件夹。

  2)、双击“Deploy.cab”文件以打开它。

  3)、在“编辑”菜单上,单击“全选”。

  4)、在“编辑”菜单上,单击“复制到文件夹”。

  5)、单击“新建文件夹”。

  键入所需的安装管理器文件夹名称,然后按 Enter 键。例如,键入“setup manager”,然后按 Enter 键。

  6)、单击“复制”。

  7)、打开所创建的新文件夹,然后双击“Setupmgr.exe”文件。Windows 安装管理器向导随即启动。

  8)、按照向导中的说明创建应答文件。

  有关如何创建应答文件的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:308662 (http://support.microsoft.com/kb/308662/) 如何在 Windows 2000 中使用安装管理器创建应答文件

  四、Sysprep 参数

  在 Windows XP 中,可以将下列可选参数与 Sysprep 命令一起使用: ? -activated - 不重设 Windows 产品激活的宽限期。只有在出厂前激活了 Windows 安装才可以使用该参数。

  重要说明:用来激活 Windows 安装的产品密钥必须与贴在特定计算机上的 COA 不干胶标签上的产品密钥相匹配。

  1、-audit - 重新启动计算机进入“工厂”模式,而不需要生成新的安全 ID (SID) 或处理 Winbom.ini 文件中 [OEMRunOnce] 部分的任何项目。只有在计算机已经处于“工厂”模式时,才使用该命令行参数。

  2、-bmsd - 将所有可用的海量存储设备填入 [SysprepMassStorage] 部分。

  3、-clean - 清除 Sysprep.inf 文件中 [SysprepMassStorage] 部分所使用的关键设备数据库。

  4、-factory - 在启用网络功能但不显示“欢迎使用 Windows”或“最小化安装”的状态下重新启动。该参数用于更新驱动程序、运行即插即用枚举、安装程序、测试、用客户数据配置计算机或在工厂环境中进行其他配置更改。对于使用磁盘映像(或克隆)软件的公司,“工厂”模式可以减少需要的映像数目。

  在以“工厂”模式完成所有任务之后,使用 -reseal 参数运行 Sysprep.exe 文件,以使计算机做好最终用户交货准备。

  5、-forceshutdown - 在 Sysprep.exe 文件完成后关闭计算机。

注意:此参数用于使用 ACPI BIOS 的计算机,这些计算机在 Sysprep.exe 文件表现默认行为时不能正常关机。

  6、-mini - 将 Microsoft Windows XP Professional 配置为使用“最小化安装”,而不是使用“欢迎使用 Windows”。该参数对 Microsoft Windows XP Home Edition 不起作用,其中首次运行经验总是“欢迎使用 Windows”。

  请注意,如果您打算使用 Sysprep.inf 文件自动进行最小化安装,则必须使用 -mini 开关运行 Sysprep 工具,或者在 GUI 界面中单击以选中“最小化安装”复选框。如果不选择运行“最小化安装”,则默认情况下 Windows XP Professional 将运行“欢迎使用 Windows”。

  7、-noreboot - 在不重新启动计算机或准备复制的情况下,修改注册表项(SID、OemDuplicatorString 和其他注册表项)。该参数主要用于测试,尤其是查看是否正确修改了注册表。Microsoft 不推荐使用该选项,因为在运行 Sysprep.exe 文件后对计算机做出更改可能会使 Sysprep.exe 文件所做的准备失效。不要在生产环境中使用该参数。

  8、-nosidgen - 运行 Sysprep.exe 文件而不生成新的 SID。如果不复制运行 Sysprep.exe 文件的计算机或者要预先安装域控制器,则必须使用该参数。

  9、-pnp - 在最小化安装期间运行旧式设备的完整的即插即用设备枚举和安装。如果首次运行经验是“欢迎使用 Windows”,则命令行参数不起作用。

  仅当在必须检测和安装旧式非即插即用设备时,才使用 -pnp 命令行参数。不要在仅使用即插即用设备的计算机上使用 sysprep -pnp 命令行参数。否则,将增加首次运行经验所需的时间,而对用户没有任何好处。

  注意:如果必须使用未签名的驱动程序,则使用 UpdateInstalledDrivers=yes 参数连同 OemPnPDriversPath= 和 DriverSigningPolicy=ignore 而非 -pnp 命令行参数以提供更加无缝的安装。

  10、-quiet - 运行 Sysprep.exe 文件而不显示屏幕确认消息。如果要自动运行 Sysprep.exe 文件,则该参数很有用。例如,如果要在无人参与安装程序完成后立即运行 Sysprep.exe 文件,应将 sysprep -quiet 命令添加到 Unattend.txt 文件的 [GuiRunOnce] 部分中。

  11、-reboot - 强制计算机自动重新启动,然后按照指定的方式,启动“欢迎使用 Windows”、“最小化安装”或“工厂”模式。如果要审核计算机,并验证首次运行经验是否运行正确,该参数很有用。

  12、-reseal - 清除事件查看器日志并使计算机做好准备以便向客户传送。“欢迎使用 Windows”或“最小化安装”设置为在下次计算机重新启动时启动。如果运行 sysprep -factory 命令,必须将安装封装为预安装过程的最后一个步骤。为此,请运行 sysprep -reseal 命令或单击“Sysprep”对话框中的“重新封装”按钮。

  2、修改恢复安装时的背景图

  在sysprep文件夹下放置一张自己的setup.bmp背景图,修改sysprep.ini文件,增加:

  [OEM_Ads]

  Background=setup.bmp

  即可。

  此方法并没有把autohal生成的setup.bmp替换掉,恢复安装时在注册画面过后,最小化安装之前还是会出现一下默认logo,但是时间很短,在最小化安装过程中显示的就是自己的setup.bmp背景图了。

  这里应该不用了 S&R&SV9.5.1118 是XP默认安装背景