工具

可以使用以下工具和实用程序自定义、加快和监视 PvD 操作。

自定义规则文件

利用 PvD 提供的自定义规则文件,可以采用以下方式修改 PvD 映像更新的默认行为:

  • PvD 上的文件的可见性
  • 如何合并对文件所做的更改
  • 文件是否可写入

有关自定义规则文件及 CoW 功能的详细说明,请参阅位于以下位置的文件中的注释:安装了 PvD 的计算机上的 C:\ProgramData\Citrix\personal vDisk\Config。名为 custom_* 的文件介绍了相关规则及其启用方法。

resize 和 poolstats 脚本

提供了两个用于监视和管理 PvD 大小的脚本,位于 Citrix Virtual Apps and Desktops 安装介质中的 Support\Tools\Scripts 文件夹中。还可以使用 PvD 映像更新监视工具,位于 Support\Tools\Scripts\PvdTool 文件夹中;有关详细信息,请参阅 http://blogs.citrix.com/2014/06/02/introducing-the-pvd-image-update-monitoring-tool/

使用 resize-personalvdisk-pool.ps1 可增大某个目录的所有桌面中的 PvD 的大小。必须在运行 Studio 的计算机上为您的虚拟机管理程序安装以下管理单元或模块:

  • XenServer 需要 XenServerPSSnapin
  • vCenter 需要 vSphere PowerCli
  • System Center Virtual Machine Manager 需要 VMM 控制台

使用 personal-vdisk-poolstats.ps1 可检查映像更新的状态以及一组 PvD 中的应用程序和用户配置文件的空间。在更新映像之前运行此脚本可检查任何桌面的空间是否已不足,有助于防止更新失败。此脚本需要在 PvD 桌面上启用 Windows Management Instrumentation (WMI-In) 防火墙。可以在主映像上或通过 GPO 启用该防火墙。

如果映像更新失败,则“Update”(更新)列中的条目将指出原因。

重置应用程序区域

如果桌面损坏(由于安装损坏的应用程序或某些其他原因所致),可以将 PvD 的应用程序区域恢复到出厂默认(空)状态。重置操作会使用户配置文件数据保持不变。

要重置 PvD 的应用程序区域,请使用以下方法之一:

  • 以管理员身份登录用户的桌面。启动命令提示窗口并运行命令 C:\Program Files\Citrix\Personal vDisk\bin\CtxPvD.exe -s Reset。
  • 在 Citrix Director 中找到用户的桌面。单击重置个人虚拟磁盘,然后单击确定

导出和导入 PvD 清单

映像更新过程是将新映像推向 PvD 桌面的不可或缺部分,其中包括调整现有个人虚拟磁盘以用于新基础映像。对于使用 Machine Creations Services (MCS) 的部署,可以将清单从活动 VM 导出到网络共享,然后再将其导入到主映像中。在主映像中使用此清单计算差额。尽管不强制使用导出/导入清单功能,但是此功能可以改善整个映像更新过程的性能。

要使用导出/导入清单功能,您必须是管理员。如果需要,请使用“net use”向用于导出/导入的的文件共享进行身份验证。用户上下文必须可以访问用于导出/导入的任何文件共享。

  • 要导出清单,请在包含 VDA(版本最低为 7.6)且启用 PvD 的计算机上以管理员身份运行导出命令。

    Ctxpvdsvc.exe exportinventory “<path-to-export-location>”

    软件会检测当前清单的位置,并将清单导出到指定位置上名为“ExportedPvdInventory”的文件夹中。下面是命令输出摘录:

     C:\Program Files\Citrix\personal vDisk\bin> .\CtxPvDSvc.exe exportinventory
     \share location\ExportedInventory
     Current inventory source location C:\CitrixPvD\Settings\Inventory\VER-LAS
     ...
     Exporting current inventory to location \ ….
     ...
     Deleting any pre-existing inventory folder at \ ….
     .Successfully exported current inventory to location \ …. Error code = OPS
    
  • 要导入之前导出的清单,请在主映像上以管理员身份运行导入命令:

导入:

在主映像上以管理员身份运行导入命令。

Ctxpvdsvc.exe importinventory “<path-to-exported-inventory>”

<path to exported inventory> 应为清单文件的完整路径,通常为 <network location\ExportedPvdInventory>。

从导入位置获取清单(之前使用 exportinventory 选项导出清单的位置)并将清单导入到主映像上的清单存储。下面是命令输出摘录:

C:\Program Files\Citrix\personal vDisk\bin> .\CtxPvDSvc.exe importinventory
\share location\ExportedInventory\ExportedPvdInventory
Importing inventory \share location\ExportedInventory\ExportedPvdInventory
…
Successfully added inventory \share location\ExportedInventory\ExportedPvdInventory to the
store at c:\ProgramData\Citrix\personal vDisk\InventoryStore

导出后,网络共享应包含以下文件名。导入后,主映像上的清单存储中应包含相同的文件名。

  • Components.DAT
  • files_rules
  • folders_rules
  • regkey_rules
  • RINGTHREE.DAT
  • S-1-5-18.DAT
  • SAM.DAT
  • SECURITY.DAT
  • SNAPSHOT.DAT
  • SOFTWARE.DAT
  • SYSTEM.CurrentControlSet.DAT
  • VDCATALOG.DAT
  • vDiskJournalData