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.
Best Answer
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.