Booting from Large Hard Disk/LILO

Rodney Peters rpeters at pcug.org.au
Tue Mar 12 16:11:23 EST 2002


On Wednesday 06 March 2002 16:57, Mark Paine <mpainf at tpg.com.au> wrote

> Got a problem with LILO - which is probably more to do with disk
> geometry than anything else, I think
>
> Anyway, the basics - Abit BE6-II motherboard with a Seagate 40Gb on the
> HPT366 controller.  Running Debian 2.2 with custom kernel (2.2.19) with
> the IDE patches to allow support for the onboard HPT366 support.
>
> I used to have a Seagate 20G on the first IDE channel (off the 440BX
> chipset), but recently upgraded to the 40G and thought it would be
> better on the HPT366 so that I could use it at ATA/66 speeds rather than
> ATA/33 as this system is my home server.  (And the 20G has gone to my
> workstation, and its 8G will be installed on this system).
>
> Anyway, the first problem I had was partitioning the HD.  fdisk reported
> a CHS of 12009/16/63.  cfdisk reported 77545/16/63.  Obviously a 16bit
> problem on the cylinder count.  Partitioning using cfdisk seemed to work
> fine and made more sense.
>
In order to get consistent geometry reported, you could try repartitioning by 
starting cfdisk with the -z switch (which ignores the existing partition 
table).  You may then need to invoke the g command within cfdisk, to set the 
geometry you are seeking.  This sometimes overcomes the situation where the 
BIOS is picking up some previous, translated geometry, which might exist even 
on a new drive, and reporting that to the kernel.

If that still does not give consistent CHS, then you might firstly need to 
use dd to zero out the first sector of /dev/hda, as the disk was probably 
pre-partitioned by the manufacturer using a different utility.  Detailed 
instructions are in the documentation for lvm.  This will, of course, totally 
obliterate the partition table and make your data unrecoverable !!.

If you are trying to boot from /dev/hda1, then you could try zeroing out the 
first sector of /dev/hda1 as well, as it may have been pre-configured for 
booting Windows.  See man cfdisk for details.

> However, when it came to install LILO, it always failed on booting by
> stopping at LI which I believe indicates a drive geometry problem.  No
> matter what geometry I put in LILO (using the disk option), or even with
> hde parameters for the kernel (which really should not be a problem I
> think), I can't get the system to boot from the 40G drive while on the
> HPT366 controller.  Options such as LBA32 and linear have no effect at
> all.  (One thing I have not tried is booting it from the main IDE
> channels, but then its running as a ATA/33 which is not really what I
> want.)
>
Before getting too involved with the ATA66 controller it would be worth 
installing the 40 gig in a running linux system and running:

	hdparm -t  /dev/hd[whatever it is]

I've not found a 5400 rpm drive that delivers more than 15 MB/s in practice - 
can't see the point in 66 MB/s if you've got only one drive on the channel.

> I am currently booting from a floppy then to the HD and all appears to
> be running fine with no problems so Linux seems to recognise the drive
> OK.
>
> The problem with booting though is bugging me.  I suspect that it is a
> BIOS problem, but the BIOS for the HPT366 is part of the motherboard
> BIOS.  I am not running the latest version of themotherboard BIOS, but
> on the Abit web site I can see no changes that would affect the HPT366
> BIOS.  There are no options in the HPT366 BIOS that affect drive
> configuration, unlike the main BIOS, so I can't over ride what the
> HPT366 BIOS is sensing the drive as.
>
I'm not familiar with the HPT366, however, it's implementation as additional 
channels on your mobo may not support booting at all.  A quick test might be 
to try any known, bootable HDD on it.  Does the main BIOS allow "hde" in the 
boot sequence ?

> Do I need to clip the capacity to 32G via a jumper setting on the HD so
> that LILO is happy enough to boot?  If I do that, would I need to
> reformat the HD?  Would I then need to have hd parameters to the kernel
> so that it knows the true geometry?
>
.> I have looked around on the net, read the Large Disk HOW-TO, and LILO
> mini HOW TO, all with no joy and am currently stumped. The only thing I
> can think of to do is a BIOS upgrade, and if that doesn't work, then
> clip the capacity to 32G. Another possibility is to boot from the 8G
> drive which would be on the first channel and LILO on it would point to
> the HPT366 (hde) drive.  This would be a bit of a hack though.
>
Bit of a waste of an 8G - a 200M would do for this purpose.

Well something is able to recognise more than 65k cyl, which is a start.  The 
Large-Disk-HOWTO covers this issue.

> Any suggestions?
>
Finally, you could try GRUB from GNU - its generally  more tolerant of disk 
geometry.  An image of a bootable floppy is available from the GNU site.






More information about the linux mailing list