在 Windows 7 中部署恢复分区的简单方法?

在 Windows 7 中部署恢复分区的简单方法?

我们正在使用 ImageX 部署 Windows 7 Professional。我们已经让 Windows 分区正常工作,但恢复分区(标准安装中位于驱动器前端的 100-200MB)并不那么简单。

TechNet 指南很有用。这看起来可行,但如果我们需要对部署的每台机器都这样做,则会花费大量时间。有没有更快/自动化的方法?

答案1

我只需创建一个 350MB 的活动分区,并用另一个分区填充磁盘的其余部分。使用 NTFS 格式化第一个分区,安装bootmgrbcd。将 Win7 安装弹出到另一个分区。然后使用为和bcdedit指定deviceosdevice设置。{bootmgr}{default}

编辑:
关于我们如何自动部署 Windows 7 的更多细节。现在请记住,我们有相当多的软件无法自动安装,因此大多数 MS 工具都不能很好地工作。(我真的希望供应商能够使用该程序,这不像 Windows Installer 和 MSI 格式已经存在了十年;哦等等,他们已经存在了。)无论如何,其中大部分都是非常标准的部署内容。

在开始之前,请务必阅读所有内容并完全了解您要做的事情。有些下载内容很大,但全部都是免费的。

  1. 构建一个安装并更新了最少软件的盒子。我们最新版本有 Windows 7、Office 2010、各种行业特定程序和工具,以及大量 .NET Framework、Visual C++ Runtime、Java 和相关内容。最后的要做的就是运行:(sysprep /generalize /shutdown之后计算机将自动关闭)。

  2. 如果您有一份准备好的 WinPE 副本,请跳过此步骤。下载Windows AIK,然后安装。按照制作 WinPE 映像的说明适用于您的环境。最常见的设置是可引导 CD可启动USB硬盘, 或者远程控制(您需要一个 TFTP 服务器和DHCP 配置对于 PXE;西门子数据系统是 MS 的实现,尽管第三方工具也可以使用)。如果您需要 WinPE 映像,请确保将 ImageX(在 Windows AIK 文件夹中)和其他工具复制到 WinPE 映像。

  3. 使用 WinPE 映像从步骤 1 启动计算机。您需要一个地方来存储映像,外部 USB HD 或网络共享通常是最佳位置。您可以使用安装网络共享net use * \\server\share。根据确切的配置,您的计算机可能有多个分区。对每个分区运行一次捕获命令(通常有两个):

    imagex /capture C:\ Z:\MyImage-C.wim "MyImage"
    imagex /capture D:\ Z:\MyImage-D.wim "MyImage"

    完成后,您便会得到一个图像,可以将其写入任何类似的计算机。计算机不必非常相似,但使用类似的计算机可以获得最佳效果。

  4. 为新计算机准备映像。如果您要将其部署到一组计算机,您将需要创建一个自定义 WinPE 映像,仅用于将映像写入计算机。这样您就可以启动它并离开。

    WinPE 非常简单仍具有许多功能的 Windows 版本。稍微试用一下,您就会更好地了解 Windows 的工作原理(这与完整的 Windows 安装过程类似)。

    您可以编写一个批处理文件并将其放入Windows\system32\startnet.cmd,它将在 WinPE 启动时自动运行。我们的文件有一些额外的复杂性,因为我们使用美国陆军运输部队将用户的文件从一个操作系统映像移动到另一个操作系统映像,但简单的版本可以是这样的:

    REM You can leave this line out if you don't need the network
    wpeinit
    
    REM Map the network drive where the image lives
    net use Z: \\server\share\images winpe_password /u:winpe_user
    
    REM Partition the drive
    diskpart /s diskpart.script
    
    REM Write the image(s)
    imagex /apply Z:\MyServer-BootPartition.wim 1 C:\
    imagex /apply Z:\MyServer-SystemPartition.wim 1 D:\
    
    REM Fix the BCD
    bcdedit -store C:\boot\BCD -set {bootmgr} device partition=c:
    bcdedit -store C:\boot\BCD -set {current} device partition=d:
    bcdedit -store C:\boot\BCD -set {current} osdevice partition=d:
    
    REM If you're booting from a USB drive you should uncomment the following two lines
    REM echo All done writing the image.
    REM pause
    

    diskpart.script 文件与批处理脚本位于同一目录中。其内容如下:

    sel drive 0
    clean
    create part pri size=350
    format quick
    act
    assign letter=c
    create part pri
    format quick
    assign letter=d
    exit
    

    简要说明一下,我知道我们的映像的 BCD 包含一个名为“{current}”的 Windows 引导加载程序部分。如果您安装的 Windows 不同,则需要更改该部分。bcdedit -enum在步骤 1 期间在机器上运行以查看 Windows 引导加载程序信息并查看标识符。

    如果您愿意,几乎所有这些都可以完全手动完成。手动操作更容易修复小错误;如果您只使用一两台计算机,手动操作会花费更少的时间。

  5. 当计算机下次启动时,它将具有通用的 WIN-8972345893 名称,并且不会成为域的一部分(如果有的话),重命名计算机并将其加入域非常快;或者您可以创建一个 unattend.xml 文件并将其传递给步骤 1 中的 sysprep。unattend.xml 文件可以提供相当多的选项;最简单的方法是使用 Microsoft 的MDT-2010创作该文件。

相关内容