在 ESXi 中更改 VM 的实例 UUID

tra*_*ark 4 uuid vmware-esxi

背景

我在免费模式下运行 ESXi 6.0.0。我创建了一个 VM,然后将其文件复制到数据存储中的另一个文件夹以创建下一台机器(几乎就像一个模板)。我最终得到了两个在生产中运行良好的虚拟机。

问题

我的备份驱动器终于进来了,所以现在我正在尝试设置 Unitrends 来进行 VM 级别的备份。当我尝试将 Unitrends 连接到 ESXi 时,出现错误:

虚拟机“vm1name”和“vm2name”具有相同的实例 UUID。请使用 VMware vSphere Client 或其他管理工具为其中一个虚拟机分配一个新的 UUID。

根据此论坛帖子的建议:我尝试编辑 VMX 文件以更改 bios.uuid 值。那并没有解决错误。接下来,我尝试在 PowerCLI 中使用同一篇文章中的脚本。它向我表明我确实有重复的实例UUID。这些显然不同于 vmx 文件中的 UUID 值(它们是唯一的)。我有两台机器,它们的实例 UUID 都是

52c7dbf3-e442-da43-a0b1-2a9befd93919

不幸的是,我似乎找不到更改实例 UUID 的方法。我一直无法在网上找到任何关于它的信息。

如何更改ESXi 上虚拟机的实例UUID?我真的必须让它工作,我很感激你能提供的任何帮助。谢谢!

tec*_*raf 5

最干净和无故障的解决方案是创建一台新机器并附加磁盘。


但是,如果要编辑配置,则机器的设置中有三个 UUID。

  • 您可以从配置文件中删除uuid.location和删除,例如使用以下命令:uuid.bios.vmx

    sed -i '/uuid.location/d' ./*.vmx
    sed -i '//d' ./*.vmx
    
    Run Code Online (Sandbox Code Playgroud)

    并重新启动机器——它应该强制生成新的 UUID(的最后三位数字也uuid.bios将匹配 中的 MAC 地址部分ethernet0.generatedAddress)。

  • 第三个vc.uuid(很可能是 Unitrends 抱怨的那个)不会被重新创建,但您可以将其值更改为另一个有意的随机数。在您的情况下,该行.vmx应该是:

    vc.uuid = "52 c7 db f3 e4 42 da 43-a0 b1 2a 9b ef d9 39 19"
    
    Run Code Online (Sandbox Code Playgroud)

您需要.vmx在机器停止时对文件进行更改,否则它们将被覆盖。