Hard disk geometry


Forum: Other Help Topics
Topic: Hard disk geometry
started by: gjhicks

Posted by gjhicks on Dec. 18 2005,01:15
Hi,

Am having a problem with DSL recognising the geometry of a hard disk.

The hard disk is a Fujitsu MPB3064AT, which has a capacity of 6.4GB and a C/H/S geometry of 13410/15/63.

But, DSL "sees" the hard disk as a geometry of 788/255/63, with a capacity of only 2.1GB.  Probably not by coincidence, this is the capacity of the smallest drive of the MPB series.

The drive has been successfully, fdisked and formatted under DOS and boots and works just fine in DOS and Win98.

I have tried the boot cheat code of "hda=13410,15,63", which is mentioned elsewhere (http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/Large-Disk-HOWTO.html and on knopppix.net) but it seems to make no difference.

Am happy to "low level" format the disk if necessary, just don't know what/how to do such.

Any suggestions gratefully received,

Geoff.

Posted by cbagger01 on Dec. 19 2005,06:16
The 788/255/63 geometry is due to a function called "Logical Block Addressing" or LBA.  It is normal.

In fact, it equates to 6.4GB

788*255*63*512bytes=6481520640 or 6.4GB

My guess is that 2.1GB is the maximum size of a FAT data partition (used by MSDOS) and is the FORMATTED size of your existing data partition also known as your C:\ drive. The rest of the space is either other partitions (D:\ , E:\ , etc) or unused free space.

You can verify this by booting DSL, opening a terminal window and type:

sudo su
cfdisk /dev/hda

where hda is the device name for your hard drive.

hda= IDE Primary MASTER drive
hdb= IDE Primary SLAVE drive
hdc= IDE Secondary MASTER drive
hdd= IDE Secondary SLAVE drive

Posted by gjhicks on Dec. 19 2005,09:36
Hi,

Thanks for your reply.  I wish it was so.

The default bios identification of the drive is the "2.1GB" solution, that is "seen" by linux (DSL, Feather and Knoppix).

I got the PC to recognise the actual 6.4GB by entering the disk geometry parameters manually (ie: "user defined").

As mentioned above, it boots just fine into both DOS and Win98SE.

DOS fdisk gives the following partition info:
PRI DOS  5185mb FAT32
EXT DOS  996mb  FAT32

After booting DSL, I ran cfdisk as root, got the following error message:

FATAL ERROR: Bad Primary Partition 0: Partition end after end-of-disk.

The relevant bits of DMESG are:

   ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:DMA
   ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:DMA, hdd:DMA
hda: FUJITSU MPB3064ATU, ATA DISK drive
hdb: CD-532E-B, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: attached ide-disk driver.
hda: 4124736 sectors (2112 MB), CHS=788/255/63
Partition check:
hda: hda1 hda2 < >
hdb: attached ide-scsi driver.

I guess the 5185Mb /dev/hda1 partition just "did not compute" for DSL, which "thinks" that the HDA is only 2112mb in total.

Any suggestions for getting DSL to recognise the two FAT32 partitions on my hard drive?

Regards,

Geoff.

Posted by skaos on Dec. 19 2005,15:56
Old PCs up to around 1995-97 (or thereabouts) had a bios limitation which didn't accept disks larger than 2 GB. To overcome this problem the disk manufactures supplied some utilities that I think did some trickery with the master boot record. I have no idea how to find out if this is the case, but you can wipe the intire disk with the following command:

dd if=/dev/zero of=/dev/hda

Note that if one of these utilities was installed, dos will probably only be able to see 2 GB afterwards. You could also check to see if there is any bios update for your box.

Posted by gjhicks on Dec. 20 2005,02:27
Actually, it was not the PCs, rather it was DOS that had the disk size problem.

If you run 'fdisk' on a 'large' (ie: greater than 512mb!) hard disk you will get a message explaning all of that.

As I have said, the disk works fine (at its full 6.4GB size) in both DOS and Win98SE but linux (3 varieties) can not see the same geometry.

Regards,

Geoff.

Posted by skaos on Dec. 20 2005,13:07
I don't know about dos, but the bios certainly had problems: most 486s had a 512 MB limit, early pentiums 2 GB, later pentiums 8 GB, and the P3-550 that I am using right now needed a new bios to accomodate a 80 GB drive.
Posted by gjhicks on Dec. 21 2005,06:45
Thanks for your reply.

As I have said, there is no (apparent) problem with the bios.  Using the "user" define approach to the hard disk (ie: specifying the cylinders, heads and sectors) got the bios to recognise the disk.  Also, both DOS and Win98 had no trouble with the size/geometry of the disk, just linux.

Does anyone know how to "tell" linux the actual disk geometry?

Geoff.

Powered by Ikonboard 3.1.2a
Ikonboard © 2001 Jarvis Entertainment Group, Inc.