Posted by: Eric Siebert
Eric Siebert VMware ESX VMFS
There are several ways you can browse the files on a virtual machine file system (VMFS) data store, but there are differences among these methods. The three most common methods are: using the VMware Infrastructure’s Client’s (VI Client’s) built-in data store browser; using the service console command-line utility; and using a SCP application such as WinSCP. Let’s go over these three methods and the key differences between them.
The VI Client’s built-in data store browser only displays files on VMFS data stores (as its name implies) and will not show other files that are located on the ESX service console. It displays the files in a virtual machines (VM’s) directory, but when displaying .vmdk disk files it displays them in a friendly format and not how they actually appear on the file system. The data store browser will only display one of the two .vmdk files that make up a virtual disk (the small descriptor file and the larger data –flat file) and the size will be that of the larger data file. Also, if you use thin disks it will show you the actual size of the thin disk and not the maximum size as the other methods do.
Thin disks grow as the disk blocks are written to and can only be created on VMFS datastores using the command-line vmkfstools utility. In the image below you can see the Test.vmdk file which is a 10 GB virtual disk, and created as a thin disk, is displaying its true current size of 720 MB. Also you can see that only the Test.vmdk file and Test-000001.vmdk (snapshot) disk files are displayed, and the Test-flat.vmdk and Test-000001-delta files are hidden.
Using WinSCP will let you browse the entire file system of an ESX host, including all the disk partitions that the service console uses and all of the VMFS data stores that the host can see. WinSCP will show you all of the files located on VMFS data stores including the two disk files that make up a virtual disk. When it comes time to showing the size of a thin disk, WInSCP shows the maximum size and not the actual current size as it is not aware of the special VMFS file system. In the image below you can see the Test.vmdk file is displaying as 10 GB and not 720 MB. Also you can see, both .vmdk files for each virtual disk are displayed.
Finally, using a service console command-line utility is the Linux equivalent of the MS-DOS dir command and similar to using WinSCP. It also displays the entire file system of an ESX host, VMFS data stores and all other files but displays thin disks as their maximum size and not actual current size. You can use various options (-l displays more detailed information, –h displays the file sizes in KB, MB or GB form instead of in bytes) with the ls command to show the output in different formats. As you can see in the image below, the Test.vmdk file is displaying as 10 GB and not 720 MB, and you can see both the .vmdk files for each virtual disk.
As you can see, there are differences between the methods, mainly with how virtual disk files are displayed. Using the VI Client data store browser is the best method as it best understands VMFS data stores, but the other methods are useful when you want to see everything on your ESX host.