How to shrink a disk in esxi: simple ways without data loss

In VMware ESXI, it is not possible to easily reduce the size of a VMDK virtual disk, as this is an architectural limitation of the hypervisor.

Any way to reduce it is always a combination of operations: first, work from inside the guest OS, then actions at the ESXI level or disk migration.

Proven methods and their nuances.

1
Reducing the size of the VMWAREESXI virtual disk.

At the hypervisor level of the first type, only VMDK augmentation operations are available. There is no "shorten" button, and that's fine.

Why:

  • VMDK block storage.
  • The hypervisor does not know which blocks are actually used inside the OS.
  • The risk of data corruption is too high.

Conclusion: the disk size should always be reduced indirectly.

2
Reduce the size of the virtual disk area in the guest OS.

The first mandatory step is to free up space inside the system.

What are we doing:

  • Deleting unnecessary data.
  • Compressing the section.
  • We reset the free space.

Examples:

Linux:

  • resize2fs, lvreduce.
  • zerofree or dd if=/dev/zero.

Windows:

  • "Disk management".
  • sdelete -z.

Important:

  • Take a snapshot before surgery.
  • Never reduce the active partition without backup.
3
Reduce the size of the VMDK file of the VMware VM.

After clearing the data, you can lower the physical size of the VMDK disk.

Способы:

Through the command line interface:

  • vmkfstools -K diskvmdk It only works with:
  • thin-provision disk.
  • pre-zeroed free space.

This does not reduce the nominal volume of the virtual disk, but only returns unused datastore blocks.

4
Using the VMware vCenter Converter Standalone.

The most reliable and universal method.

How it works:

  • The converter copies the system to anotherVMDK.
  • You set a smaller virtual disk size yourself.
  • You get a "clean" virtual disk without garbage.

Algorithm:

  • Installing the VMware vCenter Converter Standalone.
  • Select the source of the current VM machine.
  • We set new size parameters in the parameters.
  • We convert to a new VM machine, check and delete the old one.
Comparison of methods
MethodReliabilityRiskWhen to use
Partition reduction in the OSAverageAveragePreparatory stage
vmkfstools -KLowLowReleasing the datastore
vCenter ConverterHighMinimalProduction, business systems
Practical recommendation

If it is:

  • the combat server.
  • the client's project.
  • critical data.
  • Use only vCenter Converter.

All other methods are auxiliary and do not solve the problem completely.

FAQ

No. The hypervisor does not support the ability to reduce the nominal disk size. Only indirect methods are possible: cleaning up inside the OS, freeing blocks, or creating a new size.

No. Deleting files frees up space only inside the guest OS. For ESXi, these blocks are still considered occupied until they are reset to zero or the virtual disk is recreated.

It frees up unused thin-disk blocks at the datastore level.

Important:

  • the nominal dimensions of the media do not change.
  • does not work with thick-disks.
  • requires pre-zeroing of the available space.