Thread (1 message) 1 message, 1 author, 2002-07-29

Re: RAID0 - one drive's superblock is corrupt

From: Neil Brown <hidden>
Date: 2002-07-29 10:35:48

On Tuesday July 23, linux-raid@moley.org.uk wrote:
Any suggestions?
0/ restore from backups.  You do have backups don't you?

1/ Get a replacement disc the same size, copy all the data from one to
   the other
     dd if=/dev/olddisk of=/dev/newdisk bs=100M
   then change your raidtab to refer to the new drive instead of the
   old run the "mkraid" command to re-create the superblocks.

2/ The reason the "persistant=0" trick didn't work is that the
   effective size of the disk is smaller when you have a superblock.
   so: work out the effecitive size of each partition ... kernel log
   messages might tell you. mkraid will tell you (hde1 has an
   effective size of 45030080kB).
   Then change your partition tables with fdisk so that these
   partitions appear to breally the size that raid0 effecitvely make
   them, and then to the persistant=0 trick.
   To calculate the effective size, take the real size, round down to
   a multiple of 64K and subtract 64K.
   e.g. for hde1, real size is 45030163Kb
     45030163/64 == 703596
     703596 * 64 == 45030144  (this is rounded down)
     45030144 - 64 == 45030080  which is the correct number.

   To might have to use export mode to convince fdisk to ignore
   "cylinder boundries".

3/ Hack the md code to not actually write out superblocks,
   or to read them in.  And then try the mkraid command to create
   a new array.

4/ Sue IBM for selling such dodgy hard drives.

Good luck.

NeilBrown
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help