Change ESXi 7 System Storage Installation Size

Just a quick post on changing the system storage media size for ESXi 7.0 Installation. As of ESXi 7.0, a new partition layout was introduced and the installation can now consume up to 138GB of storage to allow for new features and enhancments to be added in future releases. The partition is auto-sized depending on the size of the disk.

As you can see from this image below, I installed ESXi 7 onto a 256GB disk for lab purposes and realised I was only left with a 104GB VMFS Datastore. Given this was for a small homelab environment with 16GB of memory, I didn’t need the system storage to use up all that capacity and preferred to have a larger local VMFS datastore.

Fortunately, this can be easily changed. As of ESXi 7.0 Update 1c you can now add a boot option systemMediaSize to customize the system storage consumed for the installation.

min     33GB, for single disk or embedded servers
small   69GB, for servers with at least 512GB RAM
max     all available space, for multi-terabyte servers

This can be done either by adding the boot option to the boot.cfg on your bootable ESXi install media or, you can add the boot option when initially booting ESXi by pressing “Shift+O

1. Add boot option to boot.cfg

If you are able to modify the boot.cfg on your bootable installation media, just add the boot option at the end of the “kernelopt” line. For example systemMediaSize=min

2. Add boot option on start up

When the ESXi installer starts, you have 3 seconds to press “Shift+O” Then type in the boot option, for example systemMediaSize=min

As you can see in the image below, reinstalling ESXi using this boot option systemMediaSize=min, I was left with a VMFS partition of 200GB.

Note: Do this at your own risk! To avoid undesired behaviours, I recommend for production environments, you don’t deviate from the system default configuration .

I hope you found this helpful. Feel free to comment if you have any questions.

One comment Add yours
  1. Please emphasize that the full resizing command is: runweasel cdromBoot systemMediaSize=min

    After pressing “Shift-o”, I’ve been removing the “runweasel cdromBoot” thinking that’s not part of the systemMediaSize command. Only after reading your post did I realize my mistake. Thanks for your write up.

Leave a Reply