File Extension File Extension Guide

What is a VMDK File?VMware Virtual Disk

A technical reference for the .vmdk extension, VMware's virtual hard disk format. What a VMDK file holds, how to open, mount or extract one with and without VMware, how it compares to VHD and VDI and how to convert it.

Virtual Disk 💻 VMware 🔓 Open Format 📦 Up to 62 TB
.VMDK

Virtual Machine Disk

Type:Virtual disk
Extension:.vmdk
Used by:VMware
Open since:2011
Max size:62 TB

📖 What is a VMDK File?

A VMDK file is a virtual hard disk used by a VMware virtual machine. The name stands for Virtual Machine Disk, and it uses the .vmdk extension. It holds everything a virtual machine keeps on its disk, including the operating system, installed programs and all the user data, packaged as a single file on the host computer.

In practice a VMDK behaves like a physical hard drive, except it lives as a file rather than a piece of hardware. The virtual machine reads and writes to it the same way a real PC uses its C drive, which is what lets a whole computer run inside another one.

VMware created the format for its own products, but since 2011 it has been an open format, so other virtualization tools such as VirtualBox can use it too. That openness is why VMDK turns up well beyond VMware itself.

One .vmdk file holds a whole virtual machine's disk Host computer real hard disk disk.vmdk guest operating system installed applications user data and files VMware Virtual machine sees it as a physical drive C: a working computer

Key Characteristics

  • A virtual hard disk, stored as a file
  • Made by VMware, open format since 2011
  • Fixed or growable, from megabytes to terabytes
  • Also used by VirtualBox and other tools

What It Stores

  • The guest operating system, Windows or Linux
  • Installed applications, exactly as set up
  • User data and files, the whole disk
  • Partitions, the disk's structure
⚠️ Do not delete it: A VMDK is the virtual machine's disk, so removing it from its folder stops the VM from starting. Keep it with the other VM files, above all the .vmx configuration file that points to it.

⚡ Quick Facts

File Extension.vmdk
Full NameVirtual Machine Disk
CategoryVirtual disk image
Developed ByVMware
Open Format Since2011
Used ByVMware Workstation, Player, Fusion, ESXi, VirtualBox
Disk TypesFixed (flat) or dynamic (sparse)
Maximum SizeUp to 62 TB since vSphere 5.5
PredecessorEarly VMware used the .dsk extension
Related Files.vmx, -flat.vmdk, .vhd, .vdi

📦 The Descriptor and Data

A VMDK is not always a single file. How it is split depends on which VMware product made it, and knowing the pattern helps you spot which file is which.

On VMware Workstation, a virtual disk is usually one monolithic .vmdk file with the descriptor built in. On an ESXi server, the disk is split into two, a small descriptor file and a large data file that holds the raw contents.

# ESXi splits a disk into descriptor + data:

  disk.vmdk # small text descriptor, geometry and layout
  disk-flat.vmdk # the large file with the raw disk data

# Snapshots add delta files:
  disk-000001.vmdk # records changes since the snapshot

When a virtual machine has snapshots, VMware creates extra delta or redo-log files, named with a numbered suffix, that store changes made since the snapshot was taken. That is why one virtual disk can appear as several VMDK files in the folder.

📏 Thin vs Thick Provisioning

When a VMDK is created, VMware decides how it takes up space on the host in one of two ways. This is the reason behind the common question of why a virtual disk grows, or why it never seems to shrink.

How each type uses space on the host Thin provisioned used grows on demand saves space, expands as needed does not shrink on its own Thick provisioned used reserved upfront full size claimed at creation steady performance

Thin provisioned

The VMDK starts small and grows as data is written inside the guest, so it uses only the space it needs on the datastore. It saves room at first, but it does not shrink by itself when you delete files, since freed blocks stay claimed until they are zeroed out.

Thick provisioned

The VMDK is given its full size on the host the moment it is created, whether or not the space is used yet. It uses more room upfront but tends to give steadier performance, which suits busy servers.

⚠️ Why it will not shrink: VMware has no one-click shrink. A thin VMDK holds onto its peak size even after you delete data inside the VM. Reclaiming that space means zeroing the free blocks in the guest first, then compacting the disk with a tool, and there is no way to make a disk smaller than the data it holds.

💻 How to Open a VMDK File

A VMDK is meant to be used by a virtual machine, so the most complete way to open one is to run it in VMware. There are two clicks to it.

1

Open the VMX

In VMware Workstation or the free VMware Player, choose File and Open, then pick the .vmx file that sits beside the VMDK, not the VMDK itself.

2

Power on the VM

Start the virtual machine. VMware attaches the VMDK as the disk and boots the operating system stored inside it, just like a real PC.

3

Use it as a computer

Once the VM is running, everything on the VMDK is available inside it, the files, programs and settings, exactly as saved.

💡 Keep the files together: A VMDK relies on its .vmx configuration file and, on ESXi, its -flat data file. Keep the whole set in one folder, or VMware will not be able to start the machine.

🔌 How to Mount a VMDK as a Drive

Sometimes you do not want to boot the whole machine, just to reach the files inside. VMware can mount a VMDK as an ordinary drive letter so you can browse it in Windows Explorer.

1

Map Virtual Disks

In VMware Workstation, go to File and Map Virtual Disks, then browse to the VMDK you want to reach.

2

Mount read-only

Tick the read-only option, which is recommended. It lets you copy files out without any risk of damaging a disk that belongs to a snapshot chain.

3

Browse and disconnect

The disk appears as a drive letter. Copy what you need, then disconnect the virtual disk when you are done.

💡 When mounting works: Mounting reads the files only when the virtual disk is not encrypted or corrupted, and when the VM is powered off. It is the quickest way to pull a few files out of a VMDK without starting the whole machine.

🆓 How to Open a VMDK File without VMware

You do not always have VMware to hand. Because a VMDK is an open format that acts like a disk image, several other tools open, mount or extract one.

1

VirtualBox

Oracle's free VirtualBox imports a VMDK directly and can run it as a virtual machine, since it supports the format alongside its own VDI.

2

7-Zip or WinRAR

Archive tools can open a VMDK and pull individual files out of it, treating the virtual disk much like a compressed archive.

3

PowerISO or WinMount

These mount a VMDK as a drive letter in Windows without VMware, so you can browse, copy and edit the files inside.

4

Linux Reader

On Windows, tools like Linux Reader open a VMDK and read Linux file systems inside it, handy for pulling data out of a Linux VM.

⚔️ VMDK vs VHD and VDI

VMDK is one of three main virtual disk formats, each tied to a different virtualization platform. They do the same job in different ecosystems.

FormatPlatformMade BySnapshotsBest For
VMDKVMware, VirtualBoxVMware YesVMware virtual machines
VHD / VHDXHyper-VMicrosoft YesMicrosoft virtualization
VDIVirtualBoxOracle YesVirtualBox virtual machines

The practical rule is simple. VMDK is the VMware format, VHD and VHDX are Microsoft's for the Hyper-V hypervisor, and VDI is VirtualBox's own. VirtualBox is the flexible one, since it happily runs VMDK and VHD as well as VDI. Which disk format you meet usually tells you which hypervisor created the machine.

🔄 How to Convert a VMDK File

Moving a virtual machine to a different platform usually means converting its VMDK to another disk format. The common targets are VHDX for Hyper-V and VDI for VirtualBox.

1

Pick the target

Choose VHD or VHDX to move a disk to Microsoft Hyper-V, or VDI to keep it native to VirtualBox. OVF packages the whole VM for transport.

2

Use a converter

VirtualBox's command-line tool, VMware's own utilities and PowerShell can all convert a VMDK. Work on a copy so the original stays intact.

3

Attach and test

Attach the converted disk to a virtual machine on the new platform and boot it to check the operating system starts cleanly.

💡 Package the whole VM: To move an entire machine rather than just a disk, export it as OVF or OVA. That bundles the VMDK with the VM's configuration so it imports cleanly on the other side.

🔀 Related Files

A VMDK sits among the other files that make up a virtual machine, plus the rival disk formats you convert it to.

.vmxThe VMware configuration file that describes a virtual machine and points to its VMDK. You open this to start the VM.
-flat.vmdkThe large data file holding the raw disk contents when a VMDK is split into descriptor and data.
.vhd / .vhdxMicrosoft's virtual disk formats for Hyper-V, a common conversion target.
.vdiOracle VirtualBox's own virtual disk format.
.ovf / .ovaA package that bundles a whole virtual machine, disk and configuration, for moving between platforms.

❓ Frequently Asked Questions

The complete way is to run it in VMware. In VMware Workstation or the free VMware Player, choose File and Open, pick the .vmx file that sits next to the VMDK, then power on the virtual machine. To just reach the files inside without booting, mount the VMDK as a drive, or open it in VirtualBox, 7-Zip or a mounting tool.

Use another tool that understands the format. VirtualBox imports a VMDK and can run it, 7-Zip and WinRAR extract files from it like an archive, and PowerISO or WinMount mount it as a drive letter in Windows. On Windows, Linux Reader can also read Linux file systems inside a VMDK. The format is open, so these all work.

A VMDK is the hard disk of a VMware virtual machine. It stores the guest operating system, installed applications and all the data, so the virtual machine can run as a self-contained computer inside your real one. It is used for running other operating systems, testing, servers and moving whole machines between hosts.

In VMware Workstation, go to File and Map Virtual Disks, browse to the VMDK, and tick the read-only option, which is recommended. The disk appears as a drive letter you can browse in Windows Explorer. Copy out what you need, then disconnect the virtual disk. The machine must be powered off and the disk must not be encrypted.

Yes. VirtualBox supports the VMDK format alongside its own VDI, so you can import a VMDK and either run it as a virtual machine or attach it to an existing one. This makes VirtualBox a common free way to open a VMDK without installing VMware, on Windows, Mac or Linux.

They are virtual disk formats for different platforms. VMDK is VMware's format, also read by VirtualBox, while VHD and its successor VHDX are Microsoft's formats for Hyper-V. Both store a full virtual disk and support snapshots. The main difference is which virtualization software they were built for, so moving between them usually means converting.

VMDK is VMware's virtual disk format and VDI is the native format of Oracle VirtualBox. VirtualBox can run both, but it manages VDI most fully. VMDK tends to perform well and supports incremental backups, while VDI is compact and portable. If a VM lives in VMware, it uses VMDK, and if it was made in VirtualBox, it usually uses VDI.

Common reasons are that its .vmx configuration file or -flat data file is missing, that the disk belongs to a snapshot chain and needs the other delta files, or that the disk is encrypted or corrupted. Keeping all the VM files together in one folder resolves most cases. A single VMDK moved away from its companions often will not open on its own.

When a VMDK is split into two, the small .vmdk is a text descriptor holding the disk's layout, and the -flat.vmdk is the large file holding the raw disk data. ESXi servers use this split. You need both files together, since the descriptor points to the flat file and neither is much use without the other.

Yes. VirtualBox's command-line tools, VMware's utilities and PowerShell can convert a VMDK to VHD or VHDX for Hyper-V, or to VDI for VirtualBox. Work on a copy, then attach the converted disk to a virtual machine on the new platform and boot it to check. To move a whole machine, export it as OVF or OVA instead.

In effect, its disk is. A VMDK holds everything a computer keeps on its hard drive, the operating system, programs and files, so when VMware attaches it to a virtual machine and powers it on, you get a working computer inside your own. The VMDK is the disk, and the .vmx file supplies the rest of the machine's configuration.

Most VMDK files are thin provisioned, so they grow as data is written inside the virtual machine. The catch is that they do not shrink on their own when you delete files, because the freed blocks stay marked as used until they are zeroed out. To reclaim space, zero the free blocks inside the guest, then compact the disk with a tool. VMware has no one-click shrink, and a disk can never be made smaller than the data it holds.

A thin-provisioned VMDK starts small and grows on demand, using only the space it currently needs, which saves room on the host. A thick-provisioned VMDK claims its full size the moment it is created, whether or not the space is used yet, which uses more room but tends to give steadier performance. Thin suits saving space, thick suits busy servers that need consistent speed.

📝 Summary

A VMDK file is the virtual hard disk of a VMware virtual machine, holding the guest operating system, applications and data in a single file with the .vmdk extension. Made by VMware and an open format since 2011, it is also read by VirtualBox, can be fixed or growable up to 62 TB, and may be split into a descriptor and a -flat data file. Open one by running it in VMware through its .vmx file, mount it as a drive to reach the files, or without VMware use VirtualBox, 7-Zip or a mounting tool. To move a VM elsewhere, convert the VMDK to VHDX or VDI, or export the whole machine as OVF.