1

Background

So I have a hardware RAID controller that does a RAID 10 with 4 drives. Recently one of the drives failed so I got a new drive and replaced the failed one. I let the controller rebuild the array mostly with success. When plugged into linux it would not let me mount though. I tried to unmount, then remount but it would never allow me to mount. When running blkid it would show sda but not sda1 indicating the drive is seen but not the partition. One of the times of trying to mount, it told me that the drive was previously mounted.

OK, so since the partition was created from Windows 10, and NTFS, I decided to try and look at the data on my Windows machine. I was able to see all of my data, folders, files, etc. Since this led me to believe that the RAID cluster had a mount stuck on it, I did some research and most recommendations were to run CHKDSK from windows.

I ran CHKDSK from a CMD session with Windows running at first and it told me that the disk had to be force unmounted so I said yes to that however nothing happened after that was done. For this reason I booted into a CMD session without Windows running and ran:

CHKDSK F: /R

After it finished (after around 10-15 minutes) it told me that CHKDSK would not work on a RAW disk format. This made me realize that I just lost my partition tables....

Recovery?

So my searching led me to this article:

https://html5.litten.com/updated-how-to-fix-external-disk-drive-suddenly-became-raw/

which may allow me to repair the partition tables without ruining my data and that is currently what I am trying as we speak, although it can take a long time. So as it runs, I want to know if anyone else has had this problem before and if there are any suggestions of things to try.

Better solution in the future?

So of course my main concern right now is to recover my data.. but if I do recover it I want to make sure I don't make the same mistake again. I thought that I had a good recovery plan for my data but never thought about the partition being ruined. What is a good solution for this to never happen again in the future?

Eric F
  • 3,328
  • 5
  • 29
  • 44

1 Answers1

3

What is a good solution for this to never happen again in the future?

It's understandable to want to prevent disaster. But you can't prevent every situation that puts your data at risk. Some things are simply out of your control! Your RAID might suffer a second drive loss during rebuild, rendering the array unmountable. Multiple drives could fail before you start a rebuild. A firmware bug in the RAID controller could cause data corruption. And there are many more problems unrelated to RAID that can destroy your data.

The better goal is to have a safety net for your data: Good Backups

RAID can be part of that plan, but not The Plan. You need a backup scheme that ensures you have at least one frequently updated copy of your data. Even better, you should have multiple copies that are updated on a rotating basis and some of them kept physically separate from your primary data.

Having multiple copies protects against data corruption/destruction issues you don't find out about until after the damaged data has been backed up. If you only keep one backup "instance," it would be overwritten by unusable data in a case like this.

Keeping copies of your backups away from your original data protects the backups from suffering a shared fate. For example, this protects you against physical disasters such as fire, flood, or theft. You must also ensure that the off-site backups aren't trivially accessible from the main system, such as in an always-on cloud service. This violates the "physically separate" rule and exposes the backup to common fates such as a successful ransomware attack that seeks to destroy all data accessible from the victim machine.

The best solution to keep bad things from happening to your data in the future is to have this safety net in place. Then anything can happen to your primary data and you have a way to recover.


Recovery

As for data recovery options, that's a question that already has an answer on Super User.