I recently had an external hard drive develop a corrupted file system. At first, I started noticing some errors when trying to open certain files on it, and now OSX has told me that it has frozen the disk as read-only. I have everything backed up, so it is not a catastrophic problem. But, it is still a hassle to deal with. I would like to find a way to identify such issues sooner.

I'm not concerned about identifying bad sectors or failing hardware issues (such as discussed here: How to identify and fix files with corrupted / inaccessible disk blocks), as I have other software in place already to deal with those.

My naive approach to this would be to either:

(a) write a script that goes and tries to open all of my key files periodically to check for errors and/or (b) periodically doing full checksums against my backup. Both of these, however, seem both slow and troublesome in terms of the extra wear they put on disks.

My ideal solution would:

  • Identify file system corruption early

  • Pinpoint precisely which files/directories are affected (so that I can address just those affected locations).

If that second point isn't really achievable (I'd need to have a pretty high confidence in getting every problem file and location identified), then I'd at least settle for the first.

I know that there is some third party software (e.g. Diskwarrior) that advertises an ability to diagnose these problems early, but I am unclear about how effective it actually is at that.


This is what SMART status is for.

I use a product called DiskDrill, that besides the recovery tools (paid) they have a number of free utilities including a SMART status monitor that will warn you proactively if a number of erros start popping up.

As for you data, the best approach is the "ounce of prevention is worth a pound of cure" approach. Create and stick to a back up plan where you have not one (Time Machine) backup, but a secondary (like iCloud and OneDrive). When you have multiple copies, you greatly reduce the chance of data loss.

  • Thank you for the reply! I had thought that SMART just detected hardware issues, whereas a corrupted file system can happen on a disk whose hardware is fine. Am I wrong on that? Jan 5 '17 at 16:02
  • 1
    @aireties you are correct, SMART detects only hardware issues, but FS corruption is almost always due to hardware errors. There's really not much you can do to protect against bugs in the FS code except run fsck on a regular basis (i.e. daily) Jan 5 '17 at 17:01

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .