Fixing Disk Corruption when Disk First Aid refuses

I lost a days work yesterday to a corrupt internal hard drive on my not even a year old MacBook pro and I wanted to share the double secret way to get around the roundabout of contradictions in the output from Apple’s Disk First aid program that kept me spinning all day.

First of all this is my first disk corruption on anything Mac in a decade or more than doesn’t appear to be related to a failing hard drive. At least I hope it’s not a failing hard drive as it’s the non replaceable internal SSD drive. I did spring for AppleCare on this machine so if it is failing they will fix it for me eventually but lets hope that is not the problem. I hope it’s just the kernel panics I’ve been having lately for no reason that I can find that are causing it and not a hardware failure. I’m still on Mohave on this machine so it’s not the current issues with the latest Catalina update that have caused this.

After BBEdit just froze spinning beach ball while trying to save a file I was working on I began to suspect if it wasn’t a disk issue so ran disk first aid which returns a long list of dstream allocation issues or missing objects or something like that. So I rebooted to Recovery Mode to try to do the repair. The error after watching it chew on the disk for hours was that it couldn’t actually repair the disk and I should try running it instead on the Container object. Except that the containers and lower order structures are not listed in Disk First Aid when running in Recovery mode… So the first challenge was just that I have had to run this so rarely that I didn’t immediately know that I could turn that on under the “View” toolbar item. Once turned on it did show the container and I ran it again.

The problem then was that it couldn’t unmount the container as some other volume on it was still mounted. Well of course it is, it’s the recovery partition. So… you can’t fix the non-recovery partition if you’re booted from the recovery partition? Well thats frustrating. And you can’t actually bot from an external drive without turning that on also in recovery mode so a couple more reboots and restarts to get that even allowed. I wasted a couple more hours trying to get the machine to boot from my external clone disk created by Carbon Copy Cloner which is supposed to be bootable. Except it was not bootable. It got stuck in a loop saying that a software update was needed to boot from that disk. So I would click update and it would go through the motions of downloading and running an update and then restart and tell me again that an update was needed to boot from this disk. Repeat 3 or 4 times just to be sure :wink:

So to sum up, the only way I could get this machine to boot where it wasn’t running from the recovery partition or anything else on the root disk was to use the Network boot mode where it downloads an OS boot image from Apple over the internet into memory and then boots from that. Which is a neat trick but I didn’t imagine I’d need it considering how many bootable backups I keep synced every night for backup. To do that you need to hold down both command and option while holding the R key and rebooting. It will then let you sign into your WiFi and start downloading the image. Took about 8 or 9 minutes on my network to get the data and boot up. Once I was running from there I was able to select again show all from the View toolbar item, select the disk container object and run disk first aid on that. Several hours later it had repaired everything and run the check again just to be sure. I haven’t done any extensive testing but my files that I was working with yesterday seem fine this morning though there is still plenty of time to find other corrupt things. I’m happy to have gotten it to fix the issues but angry that the process was so roundabout and frustrating. It didn’t used to be so complicated to repair a disk!

In any case, thank you for letting me vent about the experience and I hope you tuck that bit of info away into your heads in case you run into the same “boot to recovery mode to repair this” type message when you’re already booted into recovery mode!

The state of DiskFirstAid seems to be the same one as the rest of the buggy stuff. Have you asked the CCC folks why their bootable backup isn’t bootable?

disk first aid has become close to useless with the last system. it even cannot make a clone of a 10.15 volume !
on apfs volume, it is completely hopeless to repair a volume with it.
best advice: make a bootable external hard drive with the same macos version as your internal drive
to be able to boot and recover your valuable datas if needed. and make backups, as many as you can using time machine.
also some real clones, but with CCC as disk first aid cannot do it.
we used a lot diskwarrior at work to recover dead volumes, but it is hfs only they did not make it with apfs.

The ONLY answer for 10.15 is to install the OS onto a fresh USB or TB volume and then copy/install your apps and data from the old volume onto the new volume, then revers the process back to your original drive (assuming it’s not the issue). Apple’s use of their new and problematic APFS combined the age-old Unix Union mount type has things really mixed up.

I did try booting to a 10.14 Thunderbolt volume which allows access to both of the partitions on the Catastrophilina install disk, but the result of a manual fsck on both was a no-change situation when I tried to boot back into 10.15.

Even with “Full Disk Access” enabled for your app, you still don’t get full disk access.

Welcome to Desktop iOS!

Note that the default for all Macs with a T2 chip is that it is not allowed to boot from an external drive.

In Recovery Mode, under the Utilities menu, there’s a Startup Security App which allows you to change this behavior.