Citrix Provisioning

将 BIOS 虚拟磁盘转换为 UEFI

本文介绍了如何将 BIOS 虚拟磁盘转换为 UEFI。这种转换非常重要,因为 Citrix Provisioning 版本 2311 及更高版本中删除了 BIOS 支持。

可以通过两种方法将现有虚拟磁盘从 BIOS 格式转换为 UEFI:

重要:

在这两种方法中,请确保:

  • 有足够的可用空间
  • 在启动之前对磁盘进行碎片整理。可以在反向映像之后执行此步骤,也可以在将虚拟磁盘合并到单个版本之前执行此步骤。

Image Portability Service 可用于自动转换为 UEFI。有关详细信息,请参阅转换为 UEFI

直接转换虚拟磁盘

请执行以下步骤来直接转换虚拟磁盘:

  1. 确保对磁盘进行碎片整理并将其合并为单个基本版本。
  2. .VHD(X) 文件复制到存储中的新文件中。
  3. 在 Windows 中运行磁盘管理并连接 VHD
  4. 运行 diskpart 以确定已挂载磁盘的磁盘号。

    运行 diskpart

  5. 运行以下命令将已挂载的虚拟磁盘文件转换为 UEFI (GPT)。

    mbr2gpt /convert /disk:3 /allowFullOS
    <!--NeedCopy-->
    
  6. 卸载 VHD 文件并导入到 Citrix Provisioning 存储中。

使用反向映像转换虚拟磁盘

请执行以下步骤以使用反向映像转换虚拟磁盘:

  1. 使用足够大的本地磁盘反向映像到主 VM 设置作为 BIOS。
  2. 从本地磁盘重新引导 VM(更改引导顺序),然后以管理员身份登录。
  3. 运行 diskpart 以确认磁盘号。该编号必须为零。
  4. 运行以下命令将磁盘转换为 UEFI (GPT)。

    mbr2gpt /convert /disk:0 /allowFullOS
    <!--NeedCopy-->
    
  5. 关闭 VM。
  6. 更新 VM 的虚拟机管理程序配置以使用 UEFI。例如:

    • 将 VMware 用作虚拟机管理程序时,请转到 VM 的编辑设置,然后从“VM 选项”选项卡 > 引导选项部分,选择固件类型为 EFI

    在 VMware 中将引导选项设置为 EFI

    • 将 XenServer 用作虚拟机管理程序时:

      1. 确定原始 VM 的 UUID。可以从 XenCenter 获取 UUID 或者按如下所示使用 xe vm-list name-label="VM NAME"

        [root@xenserver01 ~]# xe vm-list name-label="Windows 10 BIOS"
        uuid ( RO)           : e98a0a89-2fb9-886b-a843-b8a08642afa4
        name-label ( RW): Windows 10 BIOS
        power-state ( RO): halted
        <!--NeedCopy-->
        
      2. 通过 xe vm-param-set uuid=UUID HVM-boot-params:firmware=uefi 将 VM 设置为使用 UEFI 引导,如下所示:

        [root@xenserver01 ~]# xe vm-param-set uuid=e98a0a89-2fb9-886b-a843-b8a08642afa4 HVM-boot-params:firmware=uefi
        <!--NeedCopy-->
        
  7. 引导 VM 并运行映像向导,为转换后的磁盘创建新的虚拟磁盘。
将 BIOS 虚拟磁盘转换为 UEFI