Mac OS X, Mac OS X Server: How to mount a volume as read-only

In some cases a volume will fail to mount even though it is a valid volume. If you are unable to repair the volume with Disk Utility, you should try to mount it (make it available) as read-only in order to recover data from it. To mount a volume as read-only, follow these steps.

  1. Open Terminal (/Applications/Utilities/Terminal) and execute this command: diskutil list
  2. Find the name of the volume that doesn't mount in the output, such as this:

    /dev/disk0
    #: type name size identifier
    0: Apple_partition_scheme *152.7 GB disk0
    1: Apple_partition_map 31.5 KB disk0s1
    2: Apple_HFS Drive160 152.5 GB disk0s3

    /dev/disk1
    #: type name size identifier
    0: Apple_partition_scheme *76.7 GB disk1
    1: Apple_partition_map 31.5 KB disk1s1
    2: Apple_Boot 128.0 MB disk1s2
    3: Apple_HFSX Drive80 76.6 GB disk1s3


    In this example, we'll use the volume "Drive80". Drive80 exists on disk1 on slice 3 in the above output, so the full device name is /dev/disk1s3.

  3. Make a directory with the name of the drive in /Volumes by executing this command in Terminal: mkdir /Volumes/Drive80 You'll want to substitute the name of your hard drive for "Drive80".

  4. Mount the device as read-only by issuing the following command in Terminal: sudo mount -t hfs -o rdonly /dev/disk1s3 /Volumes/Drive80 Again, substitute the name of your hard drive for "Drive80".
  5. If the volume doesn't appear in the Finder, execute this command in Terminal: disktool -r.

If these steps are successful, it may be possible to retrieve or back up data from the volume. When all possible data is recovered the drive should be erased.
Published Date: Feb 19, 2012