Upgrade from High Sierra to Mojave corrupted my partition table, unusable MBP

It's a long post, but I am listing everything I have done so far.

I performed an upgrade to Mojave (day one release from App store), the app installed and I ran through the setup steps, I left it running unattended as it was ‘52 minutes remaining’ I came back to a ‘Disk management error’ (I did not catch the error number at the time), I restarted the machine, and since that point it boots to the Apple logo and the progress bar reaches about ~75% complete before turning into the prohibited symbol.

Stupid mistake on my part is not having any backup whatsoever, and the HDD contains family images which is why I’m reluctant to give up and reformat the drive.

I am not too bothered about recovering the whole drive, a satisfactory outcome for me would be the drive is mountable and I can extract the data I want, and from there I don't mind a fresh install.

So here is where I am at, and what I have done:

  • I can load into recovery mode (cmd + r).
  • In disk utility I am only able to see the hardware name of my internal drive (APPLE HDD HT…), in the view menu I ensured ‘Show all devices’ is enabled, still no volume name for which I would expect to see ‘Macintosh HD’.
  • I can see the OS X Base system.
  • At this point I contacted official Apple support (online), once I explained I could see no drive names listed under my internal HDD, they stopped helping and said I would need to reinstall the OS.
  • Tried Target disk mode on another Mac with OSX High Sierra, it could only see the hardware name of my internal drive (APPLE HDD HT…), no volumes.
  • Tried Internet recovery mode, the globe 'spins' then the machine reboots back to into the prohibited symbol.

Output from Recovery mode Disk Utility on the Internal HDD:

First Aid found corruption that needs to be repaired.
Checking Core Storage Physical Volume partitions
Problems were found with the partition map, which might prevent booting.

Output from diskutil list:

/dev/disk0 (internal, physical):

#       TYPE                        NAME                SIZE            IDENTIFIER

0:      GUID_partition_scheme                           *500.1 GB       disk0
1:      EFI                         EFI                 209.7 MB        disk0s1
2:      Apple_CoreStorage                               499.2 GB        disk0s2
3:      Apple_Boot                  Recovery HD         650.0 MB        disk0s3


/dev/disk1 (disk image):

#:      TYPE                        NAME                SIZE            IDENTIFIER

0:      GUID_partition_scheme                           +2.1 GB         disk1
1:      Apple_HFS                   OS X Base System    2.0 GB          disk1s1

/dev/disk2 (disk image):

#:      TYPE                        NAME                SIZE            IDENTIFIER

0:      untitled                                        +5.2 MB         disk2

/dev/disk3 (disk image):

#:      TYPE                        NAME                SIZE            IDENTIFIER

0:      untitled                                        +524.3 KB       disk3

/dev/disk4 (disk image):

#:      TYPE                        NAME                SIZE            IDENTIFIER

0:      untitled                                        +524.3 KB       disk4

/dev/disk5 (disk image):

#:      TYPE                        NAME                SIZE            IDENTIFIER

0:      untitled                                        +524.3 KB       disk5    

/dev/disk6 (disk image):

#:      TYPE                        NAME                SIZE            IDENTIFIER

0:      untitled                                        +2.1 MB         disk6  

/dev/disk7 (disk image):

#:      TYPE                        NAME                SIZE            IDENTIFIER

0:      untitled                                        +524.3 KB       disk7  

/dev/disk8 (disk image):

#:      TYPE                        NAME                SIZE            IDENTIFIER

0:      untitled                                        +524.3 KB       disk8

/dev/disk9 (disk image):

#:      TYPE                        NAME                SIZE           IDENTIFIER

0:      untitled                                        +12.6 MB       disk9

/dev/disk10 (disk image):

#:      TYPE                        NAME                SIZE           IDENTIFIER

0:      untitled                                        +4.2 MB        disk10

/dev/disk11 (disk image):

#:  TYPE                            NAME                SIZE           IDENTIFIER

0:  untitled                                            +1.0 MB        disk11

/dev/disk12 (disk image):

#:  TYPE                            NAME                SIZE           IDENTIFIER

0:  untitled                                            +2.1 MB        disk12    

/dev/disk13 (disk image):

#:  TYPE                            NAME                SIZE           IDENTIFIER

0:  untitled                                            +524.3 KB      disk13

/dev/disk14 (disk image):

#:  TYPE                            NAME                SIZE           IDENTIFIER

0:  untitled                                            +524.3 KB      disk14


/dev/disk15 (disk image):

#:  TYPE                            NAME                SIZE           IDENTIFIER

0:  untitled                                            +1.0 MB        disk15



/dev/disk16 (disk image):

#:  TYPE                            NAME                SIZE           IDENTIFIER

0:  untitled                                            +6.3 MB        disk16


/dev/disk17 (disk image):

#:  TYPE                            NAME                SIZE           IDENTIFIER

0:  untitled                                            +6.3 MB        disk17

/dev/disk18 (disk image):

#:  TYPE                            NAME                SIZE           IDENTIFIER

0:  untitled                                            +524.3 KB      disk18

/dev/disk19 (disk image):

#:  TYPE                            NAME                SIZE           IDENTIFIER

0:  untitled                                            +2.1 MB        disk19

Output from diskutil cs list

No CoreStorage logical volume groups found

Output from gpt show disk0

    -bash-3.2# gpt show disk0

      start          size          index          contents

          0             1                         PMBR

          1             1                         Pri GPT header

          2            32                         Pri GPT table

         34             6                        

         40        409600              1          GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B    

     409640     975093952              2          GPT part - 53746F72-6167-11AA-AA11-00306543ECAC

  975503592       1269536              3          GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC

  976773128             7                        

  976773135            32                         Sec GPT table

  976773167             1                         Sec GPT header

I booted into Gparted, and what I'm hoping is a positive sign is it can see 'Macintosh HD', but on the flip side a file system of 'unknown' does not fill me with hope. This is where I stopped and thought it's best for someone with better experience to help guide me through any potential data recovery.

Gparted screen

I also ran Testdisk, and it could see 'Macintosh HD' and a HFS volume and one that had + backup.

Thank you in advance.

Tools at my disposal:

  • A secondary MBP (same-ish year)
  • Firewire 800 cable
  • External USB with GParted ready to boot
  • External USB blank 150gb HDD

Solution 1:

Looks like you need a better tool than the supplied Disk Utility. I'm not far from you (South Gloucestershire) and have at my disposal Disk Warrior and Tech Tool Pro (both the latest versions and available on bootable USB drives). I'm happy to meet you and give these a try FOC. I used to be an support engineer for local Apple Service Centres.