【问题标题】:How to get unique ID of a Citrix XenServer VM from the guest OS?如何从来宾操作系统获取 Citrix XenServer VM 的唯一 ID?
【发布时间】:2013-04-04 05:02:31
【问题描述】:

假设我有多个同名的 Citrix XenServer VM。或者,名字是垃圾,没关系。

如何通过其中一台 VM 上的来宾操作系统以编程方式确定 VM 的 ID?我希望 VM 的 UUID 应该作为来宾操作系统的 BIOS 序列号,但事实并非如此。到处找,注册表,WMI,你说的。

现在,我不只使用主机名的原因是,我可能有多台主机名相同的机器(例如,一个带有虚拟机副本的完整实验室)。

使用 XenServer 5.x 和 6.x。

干杯。

【问题讨论】:

    标签: citrix xen


    【解决方案1】:

    啊,在 Xen Server v6.x 中,您可以通过这种方式(如我所愿)从客户机获取 UUID:BIOS 的序列号。对于 Windows 来宾,您可以使用 WMI 在本地或远程查询。我怀疑这个 ID-as-BIOS-serial 仅在 Xen Server v5.6 中引入。

    对于早期版本,您可以通过运行旧客户端工具从客户机获取 UUID。对于 Windows 来宾,可执行文件是 xenstore_client.exe,使用“read vm”参数运行它。它的输出是一个字符串,正斜杠之后的部分是 UUID。请注意,您可以使用 PSEXEC 远程执行 xenstore_client.exe。

    【讨论】:

    • 我希望接受我自己的答案不是坏事。我花了很多时间研究这个问题并把它弄好,我从来没有在任何地方看到过另一个答案。
    • 它似乎也适用于 VMware 和 VirtualBox。对于 Linux 来宾,如果安装了 dmidecode,可以使用:dmidecode -s system-uuid。请注意,我使用的是系统 UUID 而不是序列号。在 VMware 上,两者都返回可比较的值,但在 VirtualBox 上,没有提供序列号,只有 UUID。
    • 但是,当 VM 移动到另一个管理程序实例时,此技术无法正常工作。一旦移动,UUID 就不同了。因此,我结合使用 UUID、MAC 地址和主机名来检测 VM 是否已被克隆或移动。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-12
    • 1970-01-01
    • 2015-12-05
    • 2014-04-14
    • 1970-01-01
    • 1970-01-01
    • 2021-05-15
    相关资源
    最近更新 更多