Way to rescue the contents of this messed up Fusion Drive

data-recoveryfusion-drive

I got a Mac in to support with a weird problem with a Fusion Drive. Basically it looks like this

admins-iMac:~ admin$ diskutil corestorage list
CoreStorage logical volume groups (1 found)
|    
+-- Logical Volume Group 31FF02A7-1707-4C28-9FC8-B46D2BA07CF6
    =========================================================
    Name:         Macintosh HD
    Status:       Offline
    Size:         999345012736 B (999.3 GB)
    Free Space:   -none-
    |
    +-< Physical Volume 36937114-03B4-46C5-9D0A-D0106985C1AC
    |   ----------------------------------------------------
    |   (No properties)
    |
    +-< Physical Volume 860ADA37-CD9F-4074-8341-58085C2C6FB5
        ----------------------------------------------------
        Index:    1
        Disk:     disk0s2
        Status:   Checking
        Size:     999345012736 B (999.3 GB)

So the logical drive is the same exact size as one of the physical drives (which I assume is the internal spinning hard drive).
When I open Disk Utility it gives me the "This Fusion Drive is missing a disk" error but the list of disks that will be erased to fix it is empty.

Disk Utility Fusion Drive missing disk

Output from disutil list:

admins-iMac:~ admin$ diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage                         999.3 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.1 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *32.0 GB    disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                  Apple_HFS Yosemite Boot           12.0 GB    disk1s2
   3:                  Apple_HFS Utilities               19.5 GB    disk1s3

I have no idea how it came to this state. Naturally I cannot boot from it and no file rescue software that I have tried will work on it.
Looking at the info for the physical HHD, it doesn't look like it has any file system info on it at all, which doesn't look promising (?):

admins-iMac:~ admin$ diskutil info disk0s2
   Device Identifier:        disk0s2
   Device Node:              /dev/disk0s2
   Part of Whole:            disk0
   Device / Media Name:      iMac HDD

   Volume Name:              Not applicable (no file system)

   Mounted:                  Not applicable (no file system)

   File System:              None

   Partition Type:           Apple_CoreStorage
   OS Can Be Installed:      No
   Recovery Disk:            disk0s3
   Media Type:               Generic
   Protocol:                 SATA
   SMART Status:             Verified
   Disk / Partition UUID:    EAF593A1-5313-4880-9C16-BD20876F969E

   Total Size:               999.3 GB (999345012736 Bytes) (exactly 1951845728 512-Byte-Units)
   Volume Free Space:        Not applicable (no file system)
   Device Block Size:        512 Bytes

   Read-Only Media:          No
   Read-Only Volume:         Not applicable (no file system)
   Ejectable:                No

   Whole:                    No
   Internal:                 Yes
   Solid State:              No

   This disk is a Core Storage Physical Volume (PV).  Core Storage Information:
   PV UUID:                  860ADA37-CD9F-4074-8341-58085C2C6FB5
   LVG UUID:                 31FF02A7-1707-4C28-9FC8-B46D2BA07CF6

First question: If I delete the logical volume with diskutil, the underlying disk(s) should become visible in Disk Utility and otherwise. Is there any chance, seeing as in practise the Fusion Drive only consist of one drive, I will be able to retrieve information from that disk? Either that it will mount normally or I will be able to extract files from it with for instance Data Rescue?

And secondly, is there a chance Disk Utility will be able to actually fix this, if I click the 'Fix' button, and restore the disk with all its contents?

Best Answer

Ok so I did a test before I tried it with the actual affected drive. I had an old 60 GB laptop spinning hard drive, and a 32 GB laptop-form-factor Corsair SSD, which I made into a Fusion Drive. I first formatted each drive and did a secure erase in the process to make sure there were no retrievable files left on the drives. Then used the appropriate diskutil command to make the two into a 92 GB Fusion drive.

DIY test Fusion Drive

Then I copied my 76 GB Photos Library over to this drive, which will make sure there have to be files on both drives. Then left it to "simmer" for a while (i.e. left some time for Core Storage to move files and file blocks around), maybe 1 hour. Then I opened Photos with that library, deleted, duplicated and modified a few photos, maybe 10 or so, over about 15 minutes.

I know this is not a perfect representation of real world usage of a Fusion Drive over a long time, but I feel it would give me a reasonable true idea of the rescue potential of the files in a similar Fusion Drive setup.

Then the test: I properly unmount the Fusion Drive, then plug only the spinning hard drive back in. This replicates the problem with the iMac am I having, where the internal SSD went offline. Now running the diskutil corestorage list command I see the exact same as I did with the iMac: the logical volume is there, but one of the physical disk is listed with no properties to show for it.

I then issue the diskutil cs delete command with the UUID of the logical volume (i.e.the Fusion Drive). It looks like diskutil is formatting the spinning hard drive as a normal HFS+ GUID partition disk, and after it's done the spinning hard drive appears on the desktop, seemingly empty, as you would expect.

Running Disk Rescue 4 on this disk with a Deep Scan shows me the the file rescue potential of this scenario is actually very good. DR4 is able to restore file names and folder structure of approximately 80% of the files and I end of with about 56 GB worth of images.

After this test I basically do the same with the actual iMac that I was tasked with, and I had pretty similar file rescue results with that internal 1 TB spinning hard drive.