简而言之, vmkfstools 是用于管理VMFS卷的vSphere cli工具。它将允许您对文件系统和虚拟磁盘文件执行操作。在这里,我将重点研究虚拟磁盘可以做什么。
VMKFSTOOLS虚拟磁盘选项
在cli提示符下运行 vmkfstools将显示可供我们使用的选项:
使用vmkfstools创建虚拟磁盘
要创建虚拟磁盘,我们可以运行 vmkfstools -c 2048m testdisk1.vmdk
结果,我们最终得到2个文件–虚拟磁盘描述符文件和虚拟磁盘本身:
默认情况下,这将使用Bus Logic虚拟适配器创建厚磁盘。要创建精简配置的虚拟磁盘,我们需要使用diskformat选项 vmkfstools -c 5G –diskformat Thin testdisk2.vmdk。
运行 ls -la 可能会引起误解,因为它报告新磁盘的大小为其最大可能大小,在这种情况下为5GB:
但是我们可以确认磁盘上文件的实际大小,因此可以通过运行du -ah来确认它是精简配置的。
这表明文件大小为零,这是我们对尚未使用的精简置备磁盘的期望值。
要转换或膨胀虚拟磁盘文件,以便将其更改为eagerzeroedthick格式,我们可以使用– -inflatedisk 选项。此操作将保留虚拟磁盘上的所有现有数据。根据磁盘的大小,这可能需要一些时间。
完成后,运行 du -ah 现在将显示文件正在使用最初配置为其最大大小的5GB:
使用vmkfstools扩展虚拟磁盘
如果我们指定的5GB还不够,我们可以通过运行vmkfstools -X 6GB test.vmdk来增加虚拟磁盘的大小 。我们可以再次运行 du -ah来确认更改。
使用vmkfstools克隆虚拟磁盘
我们还可以使用vmdkfstools克隆虚拟磁盘。如果我们只需要一个副本,或者在这种情况下,如果我们希望将磁盘转换回精简配置,这将很有用。我们可以通过运行 vmkfstools -i test2.vmdk test2clone.vmdk -d
磁盘的精简配置克隆将还原为5GB,因为这是我们之前设置为“急切归零”的大小:
使用vmkfstools删除虚拟磁盘
现在我们有了精简配置克隆,我们可能要删除原始虚拟磁盘。这是通过运行 vmkfstools -U test2.vmdk完成的。
从cli删除虚拟磁盘时,建议纯粹使用vmkfstools而不是linux rm命令,因为vmkfstools会删除虚拟磁盘文件及其描述符,而不必在rm命令中列出这两个文件。
使用vmkfstools重命名虚拟磁盘
最后,为了完成本文,我将重命名克隆的vmdk文件,使其反映原始名称。我们使用vmkfstools -E来做到这一点:
同样,就像删除vmdk文件一样,重命名时最好使用vmkfstools而不是mv命令,因为这会重命名两个相关的.vmdk文件。
除了在这里介绍的内容之外,此工具还有很多其他功能,包括使用RDM和VMFS文件系统本身,我将在以后的文章中介绍。