更新层
在操作系统、平台或应用程序层中更新软件的步骤几乎相同。将版本添加到层,在打包计算机上安装升级或修补程序,验证,然后完成层。更新后,您将部署新层版本,该版本因层类型而异。
平台层是最高优先级的层,对于映像部署至关重要,尤其是在设备(如网络)方面。无论何时更新基础结构软件,都必须向平台层添加新版本。
您可以使用新的操作系统层作为基础向平台层添加版本。打包机启动后,关闭计算机进行定版。平台层从新操作系统层版本中收集关键组件,并在平台中更新这些组件,使其与操作系统版本相匹配。
将版本添加到层
例如,要向操作系统层添加版本,请执行以下操作:
- 在Citrix应用分层管理控制台中,选择层 > 操作系统层
- 选择操作系统层,然后在版本信息选项卡上单击添加版本。
- 在"版本详情"中:
- 对于基地版本:选择要用作新层版本的基础的版本。默认值为最新版本。
- 输入新版本的名称。这可以是操作系统版本或其他标识信息。
- 为在其中创建层的虚拟机管理程序选择连接器配置。
- 输入打包磁盘的文件名,并选择使用设备的文件共享而不是连接器配置时要使用的磁盘格式。此磁盘用于安装应用程序的打包机(虚拟机)。
- 验证您的设置,然后单击”添加版本”。这将运行创建操作系统版本的任务。任务完成后,它将显示需要操作的状态。选择任务并单击”查看详细信息后,将显示以下文本:
打包磁盘已发布。虚拟机' <…> '可以在数据中心' <…> '的文件夹' <…> '中找到。打开此虚拟机电源以安装应用程序。安装完成后,请先关闭虚拟机电源,然后单击操作栏上的“完成”。”
接下来,您可以为此操作系统层版本部署打包计算机。
将打包计算机部署到Hypervisor
打包计算机是一个虚拟机,您可以在其中安装要包含在层中的更新或应用程序。打包计算机是一个临时虚拟机,在操作系统层完成后将被删除。
任务描述包含导航到Hypervisor中创建此层打包计算机的位置的指示。
- 要在虚拟化环境中创建打包计算机,请从步骤2中显示的扩展打包磁盘任务开始。
- 登录您的Hypervisor客户端。
- 返回管理控制台,使用展开的打包磁盘任务中的说明导航到打包计算机。
安装操作系统更新
- 远程登录到打包计算机。请确保登录到用于创建操作系统的用户帐户。
- 安装要包含在新操作系统层版本中的任何更新或应用程序,例如Windows更新或防病毒应用程序。
- 如果应用程序安装需要重新启动系统,请手动重新启动。包装机 不 会自动重启。
- 确保包装机处于用户想要的状态:
- 如果您安装的应用程序需要任何安装后安装或应用程序注册,请立即完成这些步骤。
- 删除 不 想包含在打包机上的所有设置、配置、文件、映射驱动器或应用程序。
接下来,关闭包装计算机并验证层是否已准备好完成。
验证层并关闭包装机
下一步是验证层是否已准备就绪,以便最终完成。为了做好最终确定的准备,必须完成任何必需的安装后处理,例如重新启动或微软ngen
进程。
要验证任何未完成的进程是否已完成,您可以运行“关闭完成“工具(如下图标),该工具将显示在打包计算机的桌面上。
要使用"关闭以便最终完成"工具:
- 如果您未登录到打包计算机,请以创建计算机的用户身份进行远程登录。
- 双击"关闭以完成"图标。命令行窗口显示详细说明层验证过程的消息。
- 如果在完成层之前必须完成的未完成操作,系统会提示您完成该操作。例如,如果微软
ngen
操作必须完成,则可以尝试加快ngen
操作,详情如下所述。 - 任何待处理的操作完成后,再次双击"关闭以完成"图标。这会关闭包装机。
该层已准备就绪。
如果您选择的连接器配置设置为”卸载合成,则层将自动定型。否则,下一步是手动完成层,如下一步所述。
层完整性消息
以下层完整性消息告诉您在层准备完成之前必须完成哪些排队操作:
RunOnce脚本未完成-请检查并重新启动包装机。
安装后重新启动正在等待-请检查并重新启动包装机。
微软的ngen操作正在后台进行。
-MSI安装操作正在进行中-请检查包装机。
正在等待重新启动以更新启动磁盘上的驱动程序-请检查并重新启动包装机。
需要微软的ngen操作。
软件中心客户端被配置为运行,但SMSCFG.INI仍然存在。要了解在虚拟环境中部署SCCM的更多信息,请参阅Microsoft TechNet的文章[在XenDesktop VDI环境中实现SCCM](https://social.technet.microsoft.com/wiki/contents/articles/23923.implementing-sccm-in-a-xendesktop-vdi-environment.aspx)。
有关层完整性消息的含义以及如何调试的详细信息,请参阅在Citrix应用程序分层X及更高版本中调试层完整性问题。
不能通过关闭计算机来绕过层完整性消息。应用分层软件将停止并返回到打包计算机,直到流程完成为止。
如果微软ngen
操作正在进行中,您可能能够加快操作速度,如下一节所述。
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
操作,可以将任务带入前台以尽快完成任务。
要将任务置于前台,请执行以下操作:
- 以管理员身份打开命令提示符。
转到当前正在使用的版本的
微软。净\框架
目录:cd C:\Windows\ Microsoft.NET \ FrameworkNN \ vX.X。XXXXX < !--NeedCopy-->
如果使用.NET Framework 3或更高版本,请输入以下
Ngen.exe
命令以运行所有排队项目。此命令在构建程序集之前处理排队的组件安装。Ngen eqi 3
Ngen.exe
任务会在命令提示符下移动到前台,并列出正在编译的程序集。如果你看到编译消息,这是可以的。确保所有
Ngen.exe
进程都已运行至完成。您可以使用任务管理器查看MSCORSVW.EXE
的实例是否正在运行。如果是,请允许它完成或运行ngen eqi 3
。警告:不要重新启动以停止任务。允许任务完成!
如果使用.NET Framework 2或更早版本,请输入以下
Ngen.exe
命令以运行已排队的项目。ngen更新/强制
这会在命令提示符下将ngen任务置于前台,并列出正在编译的程序集。>**注意:** >如果你看到 **编译失败的消息没** 关系。>在任务管理器中查看msword.exe的实例是否正在运行。如果是,你必须允许它完成,或者重新运行'ngen更新/force \ '。不要重新启动以停止任务。让它完成。通过以管理员身份打开命令提示符并运行以下命令来检查Ngen.exe的操作状态:“‘ngen队列状态< !——NeedCopy >
警告:不要重新启动以停止任务。允许任务完成!
- 当所有操作完成后,请使用桌面上可用的"关闭以完成"快捷方式关闭虚拟机。
手动完成层
创建打包计算机并安装任何应用程序或更新后,您就可以完成该层。
注意:当您完成操作系统层的新版本时,系统会删除打包计算机,以免产生更多成本。
当层准备完成时:
- 返回到管理控制台。
- 在"层"模块中,选择层。
- 在操作栏中选择完成。
- 监控任务栏以验证操作是否成功完成以及层是否可部署。