The vSphere platform is in my opinion the most complete package for the virtualized datacenter. One of my gripes about it is the manipulation of data in the VMFS file system.. its mostly controlled via the vSphere client, and going deep into CLI on the host itself.That isn't a problem when you live only in a vSphere world but sometimes, for debugging or troubleshooting, an extra tool to get the data off of VMFS wouldn't hurt.
Thats where this tip comes in, there are tools out there that you can use on different operating systems to mount the VMFS datastore. For this article we are going to be using Ubuntu 11.04 desktop to mount a VMFS hard drive.
First off, we are going to need the tools, these are called simply VMFS-TOOLS, and luckily we can get it with a simple apt-get
sudo apt-get install vmfs-tools
Now this is a package install, so there are 3 commands included in this package:
vmfs-fuse debugvmfs fsck.vmfs
For this tip we are going to use vmfs-fuse, which is the utility to mount VMFS.
Lets MAN into VMFS-FUSE...
vmfs-fuse VOLUME MOUNTPOINT
Simple enough, now the only problem is that if we look into /dev and ls, we get a lot of permissions for the disk in question:
Thats right, 8 partitions esxi created, a simple fdisk will give us the readout of which one is the VMFS partition:
sdb3 it is!
sudo vmfs-fuse /dev/sdb3 /mnt/vmfs
if there is no errors, it should have mounted. Trying to explore the filesystem is not possible, thats because of the funky permissions it gives:
This removes only a little convienience, because we can still browser by using the paths
sudo ls /mnt/vmfs -lah
The pure intention of this tip is to copy VMs out of the VMFS file system for archiving or troubleshooting purposes. So we can copy the VM "test vm" to a folder in ubuntu.
Note that when you copy, all thin disks will be converted to Thick, meaning a thin vm of 8GB will take the full 8GB of space on your local file system.