如何在客户操作系统中检测 vmware 工具是否已过期?

如何在客户操作系统中检测 vmware 工具是否已过期?

我正在尝试找到一种通用的方法来检查虚拟机的客户操作系统中的 VMware Tools 是否已过时。

到目前为止,我发现的最佳方法是检查“vmware-toolbox-cmd -v”的输出,并将其与预期版本号进行比较。例如:

if [ "`vmware-toolbox-cmd -v`" = "8.3.18.20074 (build-975338)" ]
then
   echo "The vmware tools are OK"
else
   echo "The vmware tools are out of date"
   ...
   ...
fi

但是版本号会随着时间而变化,所以我需要在每个虚拟机上每次更新脚本。或者我可以使用 wget 或 curl 从某些共享资源中读取“预期版本号”。

你能帮我找到更好的方法吗?

谢谢

答案1

由于 ESXi 和 vSphere 的更新频率,我现在不需要检查 Linux 客户虚拟机上的 VMware 工具版本。

我强烈支持VMware 操作系统特定包 (OSP)

这样,我就可以独立于主机处理 VMware 客户机工具,并在 Linux 包管理器级别控制更新/安装。我认为这是一种更好的方法,因为在 vSphere 基础架构较旧(例如 4.1 版)的情况下,我也可以为客户机虚拟机获取较新的工具。

例如,在 Red Hat 和 CentOS 中,我只需在例程中添加以下内容即可安装客户工具:

# rpm -ivh http://packages.vmware.com/tools/esx/5.1/repos/vmware-tools-repo-RHEL6-9.0.0-2.x86_64.rpm
# yum -y install vmware-tools-esx-kmods vmware-tools-esx

与从 vCenter 或 vSphere 客户端级别手动更新工具相比,其结果更加清晰且更易于管理。

相关内容