How can I mount partition disk0s4 that became inaccessible after a clean installation of Mountain Lion?

Solution 1:

Mounting the volume

Disk Utility verification and possible repair of the partition map

If you have not already done so, use Disk Utility 13 (426) in OS X 10.8 to select then verify:

  • not the greyed-out partition
  • instead, the physical disk that contains the partition.

If verification reveals a problem with the partition map, then consider allowing Disk Utility to attempt a repair.

Proceeding without Disk Utility

Credit to Caesium's answer for finding the asr suggestion.

Here with a disposable JHFS+ volume, an example of adjustments working as expected. Note the file system checks:

macbookpro08-centrim:~ gjp22$ diskutil unmount /dev/disk12s1
Volume sandpit on disk12s1 unmounted
macbookpro08-centrim:~ gjp22$ sudo asr adjust --target /dev/disk12s1 --settype "Apple_UFS"
Fsck /dev/disk12s1 ....10....20....30....40....50....60....70....80....90....100
Adjust completed successfully
macbookpro08-centrim:~ gjp22$ diskutil list disk12
/dev/disk12
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *256.9 MB   disk12
   1:                  Apple_UFS sandpit                 256.9 MB   disk12s1
macbookpro08-centrim:~ gjp22$ diskutil mount readOnly /dev/disk12s1
Volume on disk12s1 failed to mount
macbookpro08-centrim:~ gjp22$ sudo asr adjust --target /dev/disk12s1 --settype "Apple_HFS"
Fsck /dev/disk12s1 ....10....20....30....40....50....60....70....80....90....100
Adjust completed successfully
macbookpro08-centrim:~ gjp22$ diskutil mount readOnly /dev/disk12s1
Volume sandpit on /dev/disk12s1 mounted
macbookpro08-centrim:~ gjp22$ 

If the type of your own /dev/disk0s4 can not be safely adjusted or (re)set to Apple_HFS then:

  • the operating system may no longer work with the HFS Plus file system (or remnants thereof) that occupies, or occupied, the affected area of the physical disk; and
  • you might doubt the integrity of the partition (start and end blocks, and so on).

Relevant lines from /private/var/log/install.log should reveal what, if anything, happened to disk0s4 before, during or after installation of the OS to disk0s2. This logged information may become critical to regaining easy access to the data.

Getting the data without mounting the volume

Good luck with your use of Data Rescue 3 – I have the app, but have never attempted to recover from any area of a disk where the partition type has been affected in this way.


Observations

Device/media name

This is sometimes, not always, a match for the volume name. Here for example:

macbookpro08-centrim:~ gjp22$ diskutil info disk0s2 | grep Name:
   Device / Media Name:      swap
   Volume Name:              swap
macbookpro08-centrim:~ gjp22$ diskutil info disk0s4 | grep Name:
   Device / Media Name:      Untitled
   Volume Name:              spare

For Todd K., presence of the device/media name –

MacBook Data

– raises hope that start and end blocks etc. are good, that only the type of the partition is wrong.

No Recovery System 10.8 for OS X 10.8

Recovery HD implies Recovery OS 10.7.x.

In any case such as this, an installation that is incomplete (that is without the expected upgrade to the Apple_Boot slice) signals that a nonstandard method of installation – with only part of Apple's installer app – may have been used.

Side note

GUID Partition Table, as it's described in Disk Utility, is the norm for this type of modern installation of OS X – not Master Boot Record.

Solution 2:

Interestingly, two Google results if you search for that GUID, 46860E2C-2310-4F96-99F6-616D0B4CB55D.

One of them refers to a command that might set the partition type back to Apple_HFS (assuming it was that in the first place?), so might be worth a go?

sudo asr adjust --target /dev/disk0s4 --settype "Apple_HFS"

Source: http://help.bombich.com/discussions/questions/12878-unable-to-boot-from-local-disk-after-verify-step

[Edit: seems like my asr on Mountain Lion doesn't have an adjust argument to asr] :(