在 Azure 中准备用于分层的操作系统映像

Last published : Oct 24, 2026
本主题介绍如何准备干净的操作系统映像以导入新的操作系统层。在开始之前,请确保您满足要求。在准备映像时,如果您认为时间过长,可以加快 Microsoft Ngen.exe 操作。
如果使用 Windows 10 且未运行 Citrix Provisioning、计算机创建或 View,您可以通过删除 Windows 10 内置应用程序 来加快桌面启动时间。但是,我们建议在操作系统层的新版本上删除应用程序,而不是在操作系统映像本身中删除。
注意:
请勿将无人参与文件与 Machine Creation Services™ (MCS) Azure 连接器一起使用。如果存在无人参与文件,App Layering 软件会将其删除,因为对于 MCS Azure 连接器而言,它不是必需的,也不建议使用。

在虚拟机上安装操作系统

  1. 在Microsoft Azure 门户中,通过选择以下选项从 Windows Server 远程桌面映像创建新的虚拟机: 新建 > 计算 > 虚拟机
  2. 完成创建虚拟机向导:
    基本信息:
    • **名称:**您为新计算机指定的名称必须符合 Azure 命名约定。
    • **用户名和密码:**您指定的新服务器计算机的用户名和密码将用于创建包含此操作系统层的任何打包计算机。
    • **资源组位置:**请确保资源组位置的值与您在连接器配置中配置的存储帐户位置匹配。
  3. 选择所需的网络设置。
  4. 查看摘要并创建虚拟机。
  5. 登录到新的虚拟机,然后重新启动计算机。
  6. 安装所有重要更新。务必重新启动系统并检查更多更新。某些更新仅在其他更新安装后才可用。
  7. 运行 Windows Ngen.exe。
  8. 删除或重命名 C:\Windows\OEM 中的 Unattend 文件。
  9. 通过选择以下路径清除 Windows 自动更新: 控制面板 > 系统和安全 > Windows 更新 > 更改设置
  10. 确保此计算机未加入域。
  11. 启用内置管理员并勾选 密码永不过期。
  12. 如果这是服务器操作系统,请在 PowerShell 中运行以下命令:
    Set-ExecutionPolicy Unrestricted
    Enable-PSRemoting

在映像上运行 App Layering OS Machine Tools

  1. 在新计算机上,打开 Web 浏览器,导航到下载中心并下载 OS Machine Tools。
  2. 将以下 zip 文件下载到操作系统映像上:
    Citrix_App_Layering_OS_Machine_Tools_20.x.x.exe
  3. 运行该文件,它会将文件复制到:
    c:\windows\setup\scripts
    注意:
    文件必须解压到上述目录。请勿更改目录。

如果使用密钥管理服务,请配置许可证激活

脚本提取后,SetKMSVersion 实用程序会要求您选择是否使用密钥管理服务 (KMS) 许可。
注意: 将映像发布到同时使用 KMS 和基于 Active Directory 的激活 (ADBA) 的环境中会导致激活问题。
  1. 在以下对话框中,选择是否使用密钥管理服务 (KMS) 许可。
    设置 KMS 版本图像
要为 KMS 配置脚本,请执行以下操作。
  1. 导航到:
    c:\windows\setup\scripts
  2. 以管理员身份运行 SetKMSVersion.exe,以在 c:\windows\setup\scripts\kmsdir 文件夹中创建脚本文件。
操作系统启动时,将运行相应的 KMS 激活脚本。

安装 App Layering 服务

  1. 在新计算机上,导航到 C:\Windows\Setup\scripts 并运行 setup_x64.exe 以在操作系统计算机上安装 App Layering 驱动程序。
  2. 安装程序会提示您输入 Unattend.xml 文件的位置(默认位置为 'C:\windows\panther)。
  3. 确保此计算机未加入域。
  4. 在操作系统计算机上执行待处理的重新启动,以便您可以将此映像导入到层中。
  5. 在继续之前,请确保新的操作系统计算机处于以下状态之一。
    • 正在运行
    • 已停止
    • 已停止(已解除分配)

如有必要,加快 Microsoft Ngen.exe 操作

安装完所有软件更新后,您必须允许 Ngen.exe 将 .NET 字节码重新编译为本机映像,并构建用于管理它们的注册表项。
Ngen.exe 是 Microsoft 本机映像生成器,它是 .NET 系统的一部分。Windows 根据正在安装的软件以及 Windows 在配置中检测到的内容来确定何时运行 Ngen.exe。
重要提示: 当 Ngen.exe 运行时,您必须让它完成。中断的 Ngen.exe 操作可能会导致 .NET 程序集无法正常工作,或者在 .NET 系统中出现其他问题。
通常,Ngen.exe 是一种后台操作,当前台有活动时会暂停。如果您想加快 Ngen.exe 操作,可以将其置于前台以尽快完成。
要将任务置于前台:
  1. 以管理员身份打开命令提示符。
  2. 转到当前正在使用的 Microsoft.NET\Framework 目录:
    cd C:\Windows\Microsoft.NET\FrameworkNN\vX.X.XXXXX
  3. 输入以下 Ngen.exe 命令以运行所有排队的项目。此命令在构建程序集之前处理排队的组件安装。
    ngen eqi 3
    Ngen.exe 任务会移动到命令提示符的前台,并列出正在编译的程序集。如果看到编译消息,这是正常的。
    您可以使用 任务管理器 查看 MSCORSVW.EXE 实例是否正在运行。如果正在运行,请让它完成,或者运行 ngen update eqi 3。
    注意: 不要通过重启来停止任务。让任务完成!
  4. 确保所有 Ngen.exe 进程都已运行完成。