macOS install fails due to no free space in partition after flashing .dmg to USB

With macOS versions 10.9 (Mavericks) and above, if I try to clean install from bootable USB after flashing the USB with a .dmg image using balenaEtcher (on Windows), the install fails after verifying the InstallESD.dmg. In the logs, the installer complains that there is no room to write to the device. Apparently, the install process needs to be able to write to the USB device during installation. Since balenaEtcher creates a partition on the USB that is exactly the same size as the image, there is no room to write data (0 bytes free.)

If I restore the same .dmg to USB using Disk Utility on macOS, it creates a partition the same size as the USB device. This allows plenty of room on the USB for the installer to write data, and the OS installation succeeds. Is it possible to change this behavior in balenaEtcher so the partition fills the USB device, or at least add the option to have the partition fill the device? Without this option, it appears that I cannot clean install newer versions of macOS using a bootable USB that is imaged by balenaEtcher.

Hi @superfrogm, thanks for the report. Our team will check it out. I am wondering if the .dmg format is the culprit here, and only copies over at the exact size of the .dmg file. As you mentioned you are flashing from a Windows machine, my first suspicion is that Windows is attempting to add it’s usual System Volume Information folder. With no space to perform that action, you then receive the failure. We’ll check it out though, thanks for the report!

Hi, and thanks for your reply. I think I may have not stated the nature of the problem as clearly as needed. There is no problem at all with the flashing process in Windows. The problem occurs during macOS installation, and is related to how the USB device is partitioned. According to the macOS installer logs, after it finishes verifying the InstallESD.dmg file, it issues an error stating that it tried to write to the USB device but there is no available space.

The .dmg is fine, as I can write it out to USB using Disk Utility on macOS and the installation completes successfully. It also writes out fine to USB using blaenaEtcher on Windows. And the important difference between the USB imaged by Disk Utility vs. balenaEtcher is that with Disk Utility, the volume size is the size of the USB device, so there is extra room to write data, while with balenaEtcher, the volume is exactly the same size as the .dmg, and there is no available space at all.

I hope this clarifies what I am asking for. If balenaEtcher could include an option to make the volume the size of the target device, rather than than the image, my problem would be solved.

I am just looking for a way to write out a macOS installer .dmg to a USB to install the OS. If you think there is a better approach or tool I should be using for this, I would understand. I know balenaEtcher wasn’t created for this task specifically. But I’d like to continue using balenaEtcher if possible because it works so well with older versions of Mac OS X (Mountain Lion and older) for re-installing the OS on old Mac hardware without needing access to a working Mac to make the USB. And it is possible there may be other scenarios where it could be useful to be able to write to the flashed USB volume after it has been imaged. Thanks for your time.

Hello,

I think it’s clear now. The way Etcher works is it flashes the image exactly as it’s provided, assumption being that the OS will expand the partition as needed on boot (i.e. what Pi OS does). Hence, at the moment we don’t have the functionality to expand the image to the full size of the drive when flashing. But you can create a new feature request here.