Re: Linux makes 30G WD disk confused about its identity

From: Nicholas Vinen (hb@sonique.com)
Date: Sat Mar 25 2000 - 16:51:53 EST


On Sat, 25 Mar 2000, Dale Amon wrote:

> Since there is an on going thread on 32G drives, I thought
> it might be a good time to bring up a problem I've been
> having with a 30G Western Digital IDE drive.
>
> Using the manufacturers DOS boot application, the drive
> info looks like this:
>
> C H S MB
> Default 59598 16 63 30760
> Currently 16383 16 63 8455
> Rom BIOS 3740 255 63 30764
>
> When I boot into Linux it sees the drive at the "current"
> settings, which I believe are getting forced in when
> I use fdisk to create the partition table (cfdisk can't
> deal with it at all until I do this)
>
> I've tried changing CHS in fdisk and it seems to take
> them... but if I exit and restart the program, everything
> is back to the values in the "Currently" line again. I
> discussed this some weeks ago on linux-hardware and have
> not progressed towards a solution yet.
>
> Something, somewhere is forcing this drive to think it
> is 8G instead of 30G. It ain't the BIOS, so it seems
> to be driver related or perhaps a failing in fdisk.
>
> I can kill the partition table, go into the DOS app
> and reset the drive, but it goes right back as soon
> as I boot.
>
> The system in question is far from a phone line and
> has no external connectivity, so updates are painful.
> But it is running 2.2.14 kernel with debian potato dist
> as of November 1999.
>
> I tried a 2.3.x kernel as well and that didn't solve
> the problem either, although I limited my tests because
> I was getting some error messages that were worrisome
> and this is not a system I wish to lose a file system
> on!

   I've had this problem before. I think it's because the partition table
does indeed contain incorrect geometry, created by DOS FDISK, or something
else. The solution is this: write down the partition particular, and then
boot Linux with either it detecting the correct geometry or tell it
through boot parameters (hde=4560,255,63 or whatever...). Then do "dd
if=/dev/zero of=/dev/hde bs=512 count=1" to wipe the partition table. Run
fdisk, it will create a new one with the CORRECT geometry, then recreate
all your partitions. If you're worried you may want to back up the
partition table to a file on a floppy before you do this, with a command
like "dd if=/dev/hde of=/floppy/bootsect.backup bs=512 count=1". I've done
this successfully on two machines.

            Nicholas Vinen

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Mar 31 2000 - 21:00:16 EST