企业标准化系统模板制作:离线集成更新与DISM工具使用全流程

引言

在企业部署中,黄金映像 是效率与安全的基石——它是预集成最新补丁、驱动和配置的标准化系统模板,可避免每台设备重复在线更新,缩短部署周期。离线服务 是制作黄金映像的核心方法,通过DISM工具将更新直接注入install.wim​,使设备从初始启动就处于安全基线。

一、核心概念铺垫

在深入实践之前,透彻理解几个核心概念是至关重要的。在映像服务领域,许多常见的失败源于对基础组件及其相互关系的误解。

1.1 Windows 映像格式:WIM vs ESD

Windows安装文件主要有两种格式,可服务性是其核心区别:

  • WIM(Windows Imaging Format)
    基于文件的映像格式,支持挂载修改(如添加更新、驱动)、多映像索引(一个文件包含多个Windows版本)和单实例存储(重复文件仅存一次,节省空间)。是离线服务的唯一可操作格式
  • ESD(Electronic Software Distribution)
    高压缩率(比WIM小20%-30%)的只读格式,用于网络分发(如Media Creation Tool)。无法直接挂载修改,需转换为WIM后使用。

转换方法(以install.esd​为例):

  1. 查询ESD中的映像索引:

    Dism /Get-WimInfo /WimFile:"C:\path\to\install.esd"
    
  2. 导出为WIM(以索引1为例):

    Dism /Export-Image /SourceImageFile:"C:\path\to\install.esd" /SourceIndex:1 /DestinationImageFile:"C:\path\to\install.wim" /Compress:max /CheckIntegrity
    

1.2 Windows 更新生态:SSU、LCU与.NET

离线服务的核心是正确集成更新,需理解以下类型及其依赖关系:

  • 服务堆栈更新(SSU, Servicing Stack Update)
    更新“服务堆栈”(负责安装其他更新的组件,如CBS引擎),相当于“给补丁安装程序打补丁”。必须先于LCU安装,否则LCU无法正确解析。
  • 最新累积更新(LCU, Latest Cumulative Update)
    每月「补丁星期二」发布的核心更新,包含自版本发布以来的所有安全/功能修复。需依赖最新SSU
    深入了解:Windows 更新节奏全面解析(月度补丁/预览版/带外更新)
  • .NET Framework 更新
    独立累积更新,修复.NET框架的安全漏洞,需单独集成(大量应用依赖.NET,不可遗漏)。

关键顺序SSU → LCU →.NET(颠倒顺序会导致0x800f0823​错误,提示“需要新的服务堆栈”)。

二、准备工作——搭建操作环境

一个规范的环境是成功的基础,需解决权限路径工具问题:

2.1 安装Windows ADK

ADK(评估和部署工具包)包含离线服务必需的工具(DISM、oscdimg):

  1. 下载:从微软官网获取与本机系统相匹配的ADK版本(建议21H2或更高)。

    ADK下载
    ADK下载

  2. 安装:仅需选择“部署工具”(包含DISM和oscdimg)。

  3. 启动:以管理员身份运行“部署和映像工具环境”(预配置环境变量,避免路径错误)。

2.2 规划工作目录

为避免路径问题,建议在根目录创建无空格的工作文件夹(如C:\WIM_Project​),并按功能分类:

C:\WIM_Project
├─ 1_ISO_Source       # 原始ISO提取的所有文件
├─ 2_Updates          # 下载的更新包(SSU/LCU/.NET)
│  ├─ SSU             # SSU更新
│  └─ LCU_NET         # LCU和.NET更新
├─ 3_Mount            # 挂载映像的临时目录(需为空)
└─ 4_ISO_Output       # 最终生成的ISO文件

2.3 获取并准备源文件

  1. 下载官方ISO: 从VLSC(批量许可服务中心)或Visual Studio Subscriptions获取Windows 10 Enterprise LTSC 2021 x64纯净ISO。
    本站提供Windows 10 LTSC 2021 MSDN 官方原版镜像(初始版本 19044.1288)
  2. 提取文件:用7-Zip或文件资源管理器将ISO内容解压至1_ISO_Source​。
  3. 转换ESD为WIM:若1_ISO_Source\sources​下是install.esd​,按1.1节转换为install.wim​,替换原文件。

三、补丁搜寻——精准获取更新

Microsoft Update Catalog 是离线更新的官方来源,需掌握以下搜索技巧:

3.1 搜索技巧

  • 按KB编号:最精确(如搜索KB5062554​获取LCU)。
  • 按产品版本:组合关键词(如Windows 10 21H2 x64 Servicing Stack​)。
  • 筛选结果:关注“Title”(更新类型/版本)、“Products”(需包含Windows 10 LTSB​)、“Architecture”(x64)。

3.2 示例:下载SSU/LCU/.NET

Windows 10 LTSC 2021 x64为例:

  1. SSU:搜索Servicing Stack Update for Windows 10 Version 21H2 x64​,下载.msu​文件至2_Updates\SSU​。

    选择最新版本
    选择最新版本

  2. LCU:搜索KB5062554​,选择“2025-07 Cumulative Update for Windows 10 Version 21H2 x64”,下载至2_Updates\LCU_NET​。

  3. .NET:搜索KB5056577​,选择“2025-07 Cumulative Update for.NET Framework 3.5/4.8 for Windows 10 21H2 x64”,下载至2_Updates\LCU_NET​。

命名建议:按安装顺序重命名(如01-SSU-19041.3562-x64.msu​、02-LCU-KB5062554-x64.msu​),避免顺序错误。

四、核心流程——使用DISM集成更新

DISM (Deployment Imaging and Servicing Management) 是微软官方的映像管理工具链核心,本次操作将展示其关键场景应用:

4.1 挂载映像

install.wim​挂载至3_Mount​目录(需为空):

Dism /Mount-Image /ImageFile:"C:\WIM_Project\1_ISO_Source\sources\install.wim" /Index:1 /MountDir:"C:\WIM_Project\3_Mount"
  • 参数说明/Index:1​指定映像索引(LTSC 2021通常只有1个索引);/MountDir​指定挂载点。

4.2 第一步:集成SSU(关键!)

SSU是后续更新的基础,必须首先安装:

Dism /Image:"C:\WIM_Project\3_Mount" /Add-Package /PackagePath:"C:\WIM_Project\2_Updates\SSU\01-SSU-19041.3562-x64.msu"
  • 验证:安装后可通过Dism /Get-Packages /Image:"C:\WIM_Project\3_Mount"​查看SSU是否成功集成。

4.3 第二步:集成LCU

SSU安装完成后,再集成LCU:

Dism /Image:"C:\WIM_Project\3_Mount" /Add-Package /PackagePath:"C:\WIM_Project\2_Updates\LCU_NET\02-LCU-KB5062554-x64.msu"

4.4 第三步:集成.NET更新与启用功能

  1. 集成.NET更新

    Dism /Image:"C:\WIM_Project\3_Mount" /Add-Package /PackagePath:"C:\WIM_Project\2_Updates\LCU_NET\03-NET-KB5056577-x64.msu"
    
  2. 离线启用.NET 3.5(企业常见需求,依赖原始ISO的sxs​文件夹):

    Dism /Image:"C:\WIM_Project\3_Mount" /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:"C:\WIM_Project\1_ISO_Source\sources\sxs"
    
    • 参数说明/All​启用所有父功能;/LimitAccess​阻止连接Windows Update;/Source​指定.NET 3.5的源文件路径(来自原始ISO)。

五、映像清理——精简与优化

集成更新后,需清理冗余组件,减小映像体积。注意:部分操作不可逆!

5.1 常规清理:StartComponentCleanup

移除WinSxS中被取代的旧组件(安全且可逆):

Dism /Image:"C:\WIM_Project\3_Mount" /Cleanup-Image /StartComponentCleanup
  • 作用:回收旧更新占用的空间,不影响更新卸载。

5.2 深度清理:ResetBase​(不可逆!)

将当前更新“固化”为系统基准,不可逆(无法卸载更新),但能最大程度减小体积:

Dism /Image:"C:\WIM_Project\3_Mount" /Cleanup-Image /StartComponentCleanup /ResetBase
  • 警告

    1. 必须在所有更新/功能集成完成后执行;
    2. 执行后无法卸载任何之前集成的更新;
    3. 可能影响后续功能添加(如.NET 3.5),需确保所有功能已启用。

5.3 提交更改并卸载映像

完成清理后,将修改保存回install.wim​并释放挂载点:

Dism /Unmount-Image /MountDir:"C:\WIM_Project\3_Mount" /Commit
  • 参数说明/Commit​保存更改;若需放弃更改,用/Discard​。

六、制作可引导ISO——兼容BIOS与UEFI

使用ADK中的oscdimg​工具,将更新后的install.wim​和原始文件打包为双引导ISO:

6.1 oscdimg​命令解析

oscdimg.exe -m -o -u2 -udfver102 -bootdata:2#p0,e,b"C:\WIM_Project\1_ISO_Source\boot\etfsboot.com"#pEF,e,b"C:\WIM_Project\1_ISO_Source\efi\microsoft\boot\efisys.bin" "C:\WIM_Project\1_ISO_Source" "C:\WIM_Project\4_ISO_Output\Win10_LTSC_2021_x64_Updated.iso"
  • 参数说明

    • -m​:忽略映像大小限制;

    • -o​:优化存储(重复文件仅存一次);

    • -u2​:使用UDF 2.0文件系统(支持长文件名和大文件);

    • -udfver102​:指定UDF版本;

    • -bootdata​:定义双引导信息(2#​表示2个引导条目):

      • p0,e,b"etfsboot.com"​:BIOS引导(p0​代表x86 BIOS,etfsboot.com​是BIOS引导扇区);
      • pEF,e,b"efisys.bin"​:UEFI引导(pEF​代表UEFI,efisys.bin​是UEFI引导文件);
    • 最后两个路径:源目录(1_ISO_Source​)和目标ISO路径。

6.2 验证ISO

制作完成后,需验证ISO的可引导性:

  1. 虚拟机测试:用VMware/Hyper-V加载ISO,检查是否能正常启动并安装。
    免费下载VMware Workstation Pro 17.6.3 官方离线安装包 + Tools镜像
  2. 硬件测试:将ISO刻录至U盘(用Rufus选择“MBR+GPT”格式),在物理机上测试BIOS/UEFI启动。

您可能感兴趣的文章

发现更多精彩内容

评论