在VMware ESX / i中,如何使用VMware Virtual Infrastructure Remote CLI查找未使用的计算机/磁盘?我有一个庞大的库存和磁盘上的许多文件,我想找到可以删除的文件。
我想要的是确定是否
vmdk
计算机正在使用vmx
磁盘,或者vmx
计算机。肯定有一些聪明的方法可以找到这个吗?如果不是VIRCLI,那么可能还有别的吗?或者我需要虚拟中心吗?
编辑:这是一台不与任何其他主机共享计算机或磁盘的主机。
答案 0 :(得分:3)
IC不知道您是否已将另一台 ESXi主机正在使用的磁盘共享,后端有SAN,多台主机访问同一存储设备很常见。在这种情况下,无法知道哪些主机正在访问哪些计算机,您描述的方案只有在您拥有单个主机时才有意义 - 这不是许多VMware公司客户的典型情况。
使用RCLI或shell,您可以遍历所有现有计算机,然后将其与磁盘上的内容列表进行比较。但是,如果你在主机之间共享了磁盘,那么事情会变得复杂得多,你也需要遍历每台机器上的设备。
更新:是的,现在它更像是一个棘手的脚本/编程问题;)
从RCLI documentation开始,我可能会使用vmware-cmd -l
列出主机上所有已注册的计算机。然后使用vifs
下载配置文件grep
,查找那些寻找虚拟磁盘(.vmdk
)并将所有文件存储在文件中的文件。
第二部分,将编写一个脚本来执行递归目录列表,再次使用vifs
,再次运行grep
仅包含.vmdk
和.vmx
个文件。现在你有两个列表,通过sort
然后diff
管理这些结果,找出未在机器上注册的.vmx
个文件以及.vmdk
个文件是什么没有被任何活动的VM使用。然后你有你的候选人删除:)