2

Q: How do I force a rebuild? The following describes the scenario.

I've been experimenting with forcing a RAID10 to rebuild, so I could see what dmsetup status output should look like when a RAID is rebuilding, and also so I could get some experience with doing recoveries. The setup was using dmraid in Ubuntu. This is how I did the experiment:

  1. I caused one of the RAID member disks to become listed as "disabled" (looking at the status using dmsetup) by doing an ftp transfer onto the RAID and then during the transfer, unplugging a RAID member disk. I noted the major:minor number of the device, as well as its /dev filename (let's say it was /dev/sde) before I did the unplug. The reason why I did this was so that I could write some data onto that individual RAID member disk (see my next step) and, so this would mean that the mirror would be out of sync.

  2. I replugged the RAID member disk, I noted that when I replug, the major:minor number that dmsetup status outputs from before is different, so I get the /dev/sd* filename that is associated with this new major:minor number. Then issuing a "shred -z /dev/sdf" (where /dev/sdf is the new device filename that's associated with the new major:minor number).

  3. Restart the server.

But, now that I've restarted, dmsetup status says that all of the RAID member disks are "active" - the major:minor numbers for all of the devices go back to the way they were from before the start of the experiment. Doing a "dmraid -s -s" says that the RAID array is ok - but of course it wouldn't be, since I wrote a bunch of zeros on one of the mirror disks. Also, trying to mount the RAID array gives an output of: "mount: Structure needs cleaning".

peterh
  • 4,914
  • 13
  • 29
  • 44
Sandra E
  • 21
  • 5

1 Answers1

1

It looks like rebuild support is chipset dependent. The manpage entry for dmraid -R only discusses intel chipsets, and suggests that you can reboot and mark the drive as a "rebuild drive" in the BIOS/"OROM", then run dmraid -R raidsetname, or possibly dmraid -R raidsetname /dev/newdrive. If you don't use an intel chipset, then I guess you can try the second option, but if it doesn't work you'll need to use your chipset's BIOS to rebuild the RAID.

DerfK
  • 19,313
  • 2
  • 35
  • 51
  • Excellent, I will try this when I get the chance - will let you know if this is the answer :) – Sandra E Jun 10 '11 at 20:51
  • I went into the Intel Matrix RAID OROM and I didn't find any option to mark a drive as a rebuild drive. I only get options for "Enable only recover disk" and "Enable only master disk". – Sandra E Jun 13 '11 at 15:08
  • @Sandra sorry, no clue then. – DerfK Jun 13 '11 at 16:52