背景
我在免费模式下运行 ESXi 6.0.0。我创建了一个虚拟机,然后将其文件复制到数据存储中的另一个文件夹以创建下一台机器(几乎像一个模板)。我最终得到了两个运行良好的虚拟机,它们在生产中运行良好。
问题
我的备份驱动器终于到货了,所以现在我正尝试设置 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 上的虚拟机?我真的必须让它工作,如果您能提供任何帮助,我将不胜感激。谢谢!
答案1
最干净、最省心的解决方案是创建一台新机器并连接磁盘。
但是,如果您想编辑配置,机器的设置中有三个 UUID。
您可以从配置文件中
uuid.location
删除,例如使用以下命令:uuid.bios
.vmx
sed -i '/uuid.location/d' ./*.vmx sed -i '//d' ./*.vmx
并重新启动机器——它应该强制生成新的 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"
.vmx
您需要在机器停止时对文件执行更改,否则它们将被覆盖。
答案2
因此,此问题的答案是从 vCentre(或 vCloud Director,如果您使用它)关闭有问题的虚拟机
您不需要取消注册,除非它在单个主机上。
从虚拟机文件夹下载 vmx 文件
编辑文件中的 bios.uuid 和 vc.uuid
将新的 vmx 上传到虚拟机的文件夹
使用 Webclient 将 Vm 迁移到另一台主机,然后当它注意到 UUID 已被更改时,它会强制更改 UUID。
现在启动机器,它将有一个新的 UUID。
如果使用 vCloud Director,请确保从 VCD 控制台关闭机器,然后从那里启动机器。