Κυριακή 26 Μαΐου 2013

NAS Raid 0 recovery using ubuntu


Here is a story you might find amusing but also one that might help some people restore valuable data from a crashing home network attached storage (NAS) system:


I bought a NAS a couple of years ago for my home network. I didn't want to mess with any raid configuration and I wanted to take advantage of the full space of my 4 TB Seagate Blackarmour beast, so I opted for a 'span' configuration. This was naive, as now I realise it corresponds to Raid 0 which is the worst thing ever invented in terms of reliability. It splits all your files to both drives to gain some speed but if one hard disk fails you loose everything...

The plan was to use the NAS mainly for backup and network access to downloads. But, as you all know, family and work kept me pretty busy the last 2 years so I ended up having unique copies of all my photos/videos and work stuff in there for too long.

Two weeks ago, shortly after a firmware update  the NAS started getting stuck and continuously rebooting and I lost access to my files. Repeating the firmware update gave me 10 hours of access so I rescued some stuff but after trying it again a few times the firmware update failed so the NAS went completely useless.

I went through a lot of forum threads and I tried to mount the array using my Windows 7 and also with puppy linux live cd with no luck. Seagate advised to contact their data rescue service and a Thessaloniki based company gave me a 500 Euros quote. But there was one more thing to try:
UBUNTU!

...and it worked! Here is how:

1. Sata connect the 2 drives and boot from an Ubuntu live CD. Ubuntu may see the drives but for me it couldn't start the raid.
2. Open a terminal and do the following:
  sudo apt-get install mdadm
  sudo mdadm --assemble --scan
  sudo mdadm --assemble --run
3. Then the raid drive should start and you should be able to mount it. I couldn't because it was giving me an unknown file system error, so I had to follow this procedure:
  sudo apt-get install lvm2
  Sudo vgs
  Sudo vgscan
  Sudo lvs
  Sudo modprobe dm-mod
  Sudo vgscan
  Sudo vgchange -ay yourVGvolName
  Sudo mount /dev/VGvolName/VGlogVolName /mnt/
...and the ubuntu reads it as if nothing ever happened...

I got the above command lines from the following forums and I am really really grateful to the people who posted them. I think I owe 250 pints of beers to each of them...

Here is how to solve the "not enough components to start the raid array problem":
Here is how to solve the "unknown file system type LVM2-member" problem:
And of course a big thanks to Ubuntu! It is currently rescuing my files with 80 MBps.

After this whole adventure I feel I am all back and young again...


1 σχόλιο:

V. είπε...

You did it! Ubuntu rules !