Wednesday, March 29, 2017

linux - Unable to reassemble md raid on drives pulled from ReadyNas Duo v1

I'm toying with a ReadyNAS device that I've recently acquired. It is a SPARC-based box, and it runs linux.




As device is pretty slow, I've pulled one drive out of array, hoping to populate it with files much faster than via Ethernet. However, assembling its MD raid seems impossible to me.



Configuration:




  • /dev/sdb is a device pulled from NAS.

  • /dev/sdb[1-3] partitions are of fd type (linux raid autodetect).

  • Each partition is part of respective /dev/md[0-2] raid1 device.

  • All raid arrays work perfectly when device is plugged to NAS.




Here's what I get:



# mdadm --assemble --scan
mdadm: failed to add /dev/sdb3 to /dev/md/2_0: Invalid argument
mdadm: failed to RUN_ARRAY /dev/md/2_0: Invalid argument
mdadm: failed to add /dev/sdb2 to /dev/md/1_0: Invalid argument
mdadm: failed to RUN_ARRAY /dev/md/1_0: Invalid argument
mdadm: failed to add /dev/sdb1 to /dev/md/0_0: Invalid argument
mdadm: failed to RUN_ARRAY /dev/md/0_0: Invalid argument

mdadm: failed to add /dev/sdb to /dev/md/2: Invalid argument
mdadm: failed to RUN_ARRAY /dev/md/2: Invalid argument
mdadm: No arrays found in config file or automatically

# mdadm -E /dev/sdb1
/dev/sdb1:
Magic : a92b4efc
Version : 0.90.03
UUID : 8ae34a5e:c446418f:1245590f:4aa53e2a
Creation Time : Wed Mar 13 09:56:36 2013

Raid Level : raid1
Used Dev Size : 2047936 (2000.27 MiB 2097.09 MB)
Array Size : 2047936 (2000.27 MiB 2097.09 MB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 0

Update Time : Wed Mar 13 10:19:36 2013
State : clean
Active Devices : 2

Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Checksum : f7dff982 - expected 5532a626
Events : 91658897063936


Number Major Minor RaidDevice State
this 1 33 1 1 active sync


0 0 22 1 0 active sync
1 1 33 1 1 active sync

# cat /proc/mdstat
Personalities :
Unused devices:


Devices /dev/sdb2 and /dev/sdb3 have same output as above, except: UUID, Used Dev Size, Array Size, Preferred Minor, Checksum and Events, so I've omitted them for clarity.




I've read somewhere that the error above means kernel modules need to be loaded first, but I believe that if I create raid1 array on another pair of disks (while this disk in question is still present), linux would have auto-loaded all necessary modules (correct me if I'm wrong here). And it still doesn't recognize md raid devices.



Attempts to assemble an array by hand yields nothing useful:



# mdadm --assemble /dev/md0 /dev/sdb1
mdadm: failed to add /dev/sdb1 to /dev/md0: Invalid argument
mdadm: /dev/md0 assembled from 0 drives - need all 2 to start it (use --run to insist).


Here mdadm was very clear about what it needs, given that this IS a raid1 array, but as it is one part of mirror copy, it must be able to work on its own:




# mdadm --assemble /dev/md0 /dev/sdb1 --run
mdadm: failed to add /dev/sdb1 to /dev/md0: Invalid argument
mdadm: failed to RUN_ARRAY /dev/md0: Invalid argument


How can I mount these MD raid devices?

No comments:

Post a Comment

hard drive - Leaving bad sectors in unformatted partition?

Laptop was acting really weird, and copy and seek times were really slow, so I decided to scan the hard drive surface. I have a couple hundr...