Mac – 370GB unused but cannot shrink APFS container

apfsbackuphard drivepartitiontime-machine

200GB unused, but can't change APFS container size due to minimum requirement

I would like to shrink my APFS container on the macOS side to 100GB so that I can allocate more storage to Bootcamp. I have tried using the command:

sudo diskutil apfs resizeContainer disk0s2 350g

which results in this:

Started APFS operation
Aligning shrink delta to 101,999,992,832 bytes and targeting a new physical store size of 349,999,996,928 bytes
Determined the minimum size for the targeted physical store of this APFS Container to be 86,805,315,584 bytes
Resizing APFS Container designated by APFS Container Reference disk1
The specific APFS Physical Store being resized is disk0s2
Verifying storage system
Using live mode
Performing fsck_apfs -n -x -l -S /dev/disk0s2
Checking the container superblock
Checking the EFI jumpstart record
Checking the space manager
Checking the space manager free queue trees
Checking the object map
Checking volume
Checking the APFS volume superblock
The volume Macintosh HD — Data was formatted by diskmanagementd (945.220.38) and last modified by apfs_kext (1412.0.28.171.1)
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the extent ref tree
Checking the fsroot tree
Checking volume
Checking the APFS volume superblock
The volume Preboot was formatted by newfs_apfs (748.31.8) and last modified by apfs_kext (1412.0.28.171.1)
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the extent ref tree
Checking the fsroot tree
Checking volume
Checking the APFS volume superblock
The volume Recovery was formatted by newfs_apfs (748.31.8) and last modified by apfs_kext (1412.0.28.171.1)
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the extent ref tree
Checking the fsroot tree
Checking volume
Checking the APFS volume superblock
The volume VM was formatted by newfs_apfs (748.31.8) and last modified by apfs_kext (1412.0.28.171.1)
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the extent ref tree
Checking the fsroot tree
Checking volume
Checking the APFS volume superblock
The volume Macintosh HD was formatted by diskmanagement (1409.0.0.141.4) and last modified by apfs_kext (1412.0.28.171.1)
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the extent ref tree
Checking the fsroot tree
Verifying allocated space
warning: overallocation detected on Main device: (0x523df92+1) bitmap address (0x1091e)
The volume /dev/disk0s2 appears to be OK
Storage system check exit code is 0
Shrinking APFS Physical Store disk0s2 from 451,999,989,760 to 349,999,996,928 bytes
Shrinking APFS data structures
APFS Container Resize error code is 49187
Error: -69606: A problem occurred while resizing APFS Container structures

Can't resize APFS Container: Not enough free space in Container due to APFS limits or tidemarks

When I do tmutil listlocalsnapshots / the output is Snapshots for volume group containing disk /: so I assume that I have no snapshots. I have also tried $ tmutil thinlocalsnapshots / 9999999999999 to no avail.

In 200GB unused, but can't change APFS container size due to minimum requirement, Geoff said

Yes, you have deleted all your local snapshots. But you also have another backup drive. In the example you linked, there was no such drive. You need to remove all Time Machine backups stores, disable all destinations, etc. You can reassociate your backups later.

which I honestly do not understand. Am I supposed to use tmutil destinationinfo [-X], and if so, what do I put in place of the -x? Whatever I put in it just says No destinations configured.

Same thing goes for removedestination identifier, which shows tmutil: No destination matching ID: identifier.

I've been up all night trying to fix this issue, but I'm missing something here. Any help at all would be appreciated.

Best Answer

Unfortunately, due to the way Boot Camp (especially its partitions) works in conjunction with APFS, you cannot arbitrarily resize either the Boot Camp partition nor the APFS Container once both are present on the same device; the only viable method for reallocating capacities is destructive to the Boot camp partition.

Back up your Boot Camp Partition (use eg. WinClone or the Windows Backup tool) then use Boot Camp Assistant to remove the Boot Camp partition, reboot, then start over by using Boot Camp Assistant to create the new Boot Camp partition in the size required.