Windows – enlarge the EFI Partition? And if so how

bootcampefipartitionwindows

I've been searching for this forever…
By default EFI partition on Mac is 200 MB.
I have a special Windows 10 image (enterprise compilation) I would like to install on the Boot Camp partition, which requires that the EFI partition be 500 MB due to the image installer boot.wim file size, which is 290 MB.

The way I tried to do this is first install MS Windows 10 image downloaded from MS website by using Boot Camp Assistant to create and prepare Windows partition, then startup from the USB drive that includes the Windows 10 Enterprise image, deploy the image on top of the Windows partition, and reboot starting up from Windows to continue installation, but because I cannot copy boot.wim file onto the EFI partition, the deployment process cannot continue.

I've been trying different methods to change EFI partition size, using diskpart when starting up from the USB drive with the Windows image, or diskutil when starting up from macOS.
None of which allowed me to resize the EFI partition:

  • With diskutil I get: "File system format does not support resizing".
  • With diskpart I get: "You may not extend OEM, ESP, or recovery partitions".

Is EFI partition resizing even possible?

Due to the fact that this is a relatively new Mac, I don't think I'll have any problem reformatting the drive for this to work, and reinstall Sierra from the Recovery Mode, if necessary (Of course if it's possible to change the partition size without losing data, that's the best solution).

Best Answer

I used Rod Smith answer and comments @ https://superuser.com/questions/1142967/can-i-enlarge-mac-efi-partition-and-if-so-how and understood that the EFI partition does not have to be the first partition on the drive. So basically I performed the following procedure:

  • Marked the EFI partition as normal data partition
  • Created another 500MB partition, marked it as EFI
  • Installed the OS and moved the boot.wim to the new EFI and let the deployment procedure complete
  • After the deployment completed I marked the old partition back to EFI and deleted the new partition I created, and voila! the OS deployed successfully and the drive returned to its original state