HyperV Linux EFI VHDX 迁移在引导选项中缺少 EFI

Lor*_*tti 5 redhat hyper-v uefi rhel7 hyper-v-server-2016

我有一个HyperV 2016由 n 台机器组成的集群在W2k16.

我已经复制了使用此引导顺序运行VHDXRHEL 7.5 (Gen2)VM(并禁用了安全引导):

截屏

使用克隆的磁盘创建新 VM 后,EFI 文件条目消失了,我无法再启动。

注意:如果我从 a 引导,Rescatux CD我会看到正确列出的所有引导条目,并且我可以(从该磁盘手动)引导到RHEL

Jak*_*ins 1

UEFI 启动选项存储在 UEFI 变量中,而不是存储在磁盘上。对于物理机或虚拟机都是如此。Hyper-V 将 UEFI 变量存储在 VM 状态文件之一中,而不是 VHD 中。因此,当您将 VHD 与 VM 分离时,您会丢失 UEFI 变量和启动条目。

如果要克隆依赖 UEFI 变量启动的计算机,请导出 VM 并再次导入。这会将状态文件和 VHD 作为一个集合保留在一起,而不是将它们分开。

顺便说一句,并非所有来宾操作系统都以 RHEL 此处的方式设置 UEFI 变量,这就是为什么您并不总是看到此问题的原因。某些操作系统(包括 Windows)将 UEFI 引导变量设置为指向磁盘,而不是磁盘上的文件,并且 UEFI 规范规定了在磁盘上的默认位置中查找引导文件的位置。我之所以提到这一点,是因为人们通常会问的下一个问题是为什么它似乎只在某些时候失败。