在 Linux VM 中,我尝试使用以下命令读取 OVF 环境参数:
# vmtoolsd --cmd 'info-get guestinfo.ovfEnv'
No value found
我确实检查过 vmtoolsd 服务是否正在运行。
如果我进入虚拟机的“编辑设置”,我可以清楚地看到确实存在OVM 环境设置。所以我希望这个命令能够起作用。
有人知道为什么它不起作用吗?或者如何解决?
注意:我在 ESX 6.5 / vCenter 6.5 内的 CentOS7 VM 上运行。
答案1
我发现关闭并打开 Guest VM 可以解决此问题。我现在在命令的输出中获得了 OVF 环境参数:
# vmtoolsd --cmd 'info-get guestinfo.ovfEnv'
<?xml version="1.0" encoding="UTF-8"?>
<Environment
xmlns="http://schemas.dmtf.org/ovf/environment/1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:oe="http://schemas.dmtf.org/ovf/environment/1"
xmlns:ve="http://www.vmware.com/schema/ovfenv"
oe:id=""
ve:vCenterId="vm-186">
<PlatformSection>
<Kind>VMware ESXi</Kind>
<Version>6.5.0</Version>
<Vendor>VMware, Inc.</Vendor>
<Locale>en</Locale>
</PlatformSection>
...
注意:“重新启动客户操作系统”没有帮助,只能关闭/打开电源。
也许其他人可以帮助解释为什么该命令一开始不起作用,和/或从客户虚拟机内部更好地恢复。