准备用于在 Google Cloud 上分层的操作系统映像
本主题介绍如何准备干净的操作系统映像,以便将其导入新的操作系统层。在开始之前,请确保您满足要求。在准备映像时,如果您认为 Microsoft Ngen.exe 操作耗时过长,可以加快其运行速度。
如果使用 Windows 10 且未运行 Citrix Provisioning、Citrix Machine Creation 或 View,您可以通过删除 Windows 10 内置应用程序来加快桌面启动时间。但是,我们建议在操作系统层的新版本中删除应用程序,而不是在操作系统映像本身中删除。
在虚拟机上安装操作系统
-
熟悉准备操作系统层的准则,包括要求和建议。务必阅读有关操作系统层中应包含和不应包含哪些内容的章节。
-
导航到 Google Cloud 门户。
-
在左侧列中选择“Marketplace”,然后部署新的虚拟机。
注意:
配置新实例网络时,请确保虚拟机位于设备可访问的网络上。
-
如果您使用的是 Windows Server 操作系统,请滚动到“Operating systems”,然后选择 Windows Server 2019 或 Windows Server 2016 操作系统。
-
如果您要从其他平台引入 Windows 10(Marketplace 中不提供),请按照自带许可证教程中的步骤操作。
-
配置新实例:
-
选择新实例的网络时,请确保虚拟机位于设备可访问的网络上。
-
选择存储时,任何类型的存储都可以。
-
在映像上运行 App Layering 操作系统计算机工具
-
在新计算机上,打开 Web 浏览器,导航到下载中心并下载“OS Machine Tools”。
-
将以下 zip 文件下载到操作系统映像中:
Citrix_App_Layering_OS_Machine_Tools_20.x.x.exe <!--NeedCopy--> -
运行该文件,它会将文件复制到:
c:\windows\setup\scripts <!--NeedCopy-->注意:
文件必须解压到上述目录。请勿更改目录。
如果使用密钥管理服务,请配置许可证激活
脚本提取后,SetKMSVersion 实用程序会询问您是否使用密钥管理服务 (KMS) 许可。
注意:
将映像发布到同时使用 KMS 和基于 Active Directory 的激活 (ADBA) 的环境中会导致激活问题。
-
在以下对话框中,选择是否使用密钥管理服务 (KMS) 许可。

要为 KMS 配置脚本,请执行以下操作。
-
导航到:
c:\windows\setup\scripts <!--NeedCopy--> -
以管理员身份运行 SetKMSVersion.exe,以在
c:\windows\setup\scripts\kmsdir文件夹中创建脚本文件。
操作系统启动时,将运行相应的 KMS 激活脚本。
安装 App Layering 服务
- 在新计算机上,导航到
C:\Windows\Setup\scripts并运行 setup_x64.exe 以在操作系统计算机上安装 App Layering 驱动程序。 - 安装会提示您输入 Unattend.xml 文件的位置(默认位置为“C:\windows\panther”)。
- 确保此计算机未加入域。
- 在操作系统计算机上执行挂起的重新启动,以便您可以将此映像导入层中。
- 在继续操作之前,请确保新的操作系统计算机处于以下状态之一。
- 正在运行
- 已停止
- 已停止(已解除分配)
如有必要,加快 Microsoft Ngen.exe 操作
安装所有软件更新后,必须允许 Ngen.exe 将 .NET 字节码重新编译为本机映像,并构建用于管理它们的注册表项。
Ngen.exe 是 Microsoft Native Image Generator,它是 .NET 系统的一部分。Windows 根据正在安装的软件以及 Windows 在配置中检测到的内容来确定何时运行 Ngen.exe。
重要:
当
Ngen.exe运行时,必须让它完成。中断的Ngen.exe操作可能会导致 .NET 程序集无法正常工作或 .NET 系统中出现其他问题。
通常,Ngen.exe 是一种后台操作,当前台活动存在时会暂停。如果要加快 Ngen.exe 操作,可以将其置于前台以尽快完成。
要将任务置于前台:
- 以管理员身份打开命令提示符。
-
转到当前使用的
Microsoft.NET\Framework目录:cd C:\Windows\Microsoft.NET\FrameworkNN\vX.X.XXXXX <!--NeedCopy--> -
输入以下
Ngen.exe命令以运行所有排队的项目。此命令在构建程序集之前处理排队的组件安装。ngen eqi 3 <!--NeedCopy-->Ngen.exe任务会移至命令提示符的前台,并列出正在编译的程序集。如果您看到编译消息,这是正常的。您可以使用“任务管理器”查看
MSCORSVW.EXE实例是否正在运行。如果正在运行,请允许它完成,或者运行ngen update eqi 3。注意:
请勿重新启动以停止任务。让任务完成!
- 确保所有
Ngen.exe进程都已运行完成。