[sclug] booting / large hard drive nightmare

David Given dg at cowlark.com
Sun Oct 17 13:05:00 UTC 2004

James Wyper wrote:
> No matter what I've tried (having reread the large disk HOWTO several
> times), I cannot get Linux (2.4.19-mdk) to recognise the entire size of
> the 80GB drive unless the OnTrack disk manager boots before Linux does.

AIUI, disk managers just install some code that intercepts BIOS calls to 
access the disk. So, the disk manager will affect the way Linux boots (because 
the kernel is loaded with the BIOS), but will have absolutely no effect on the 
way Linux runs (because the Linux kernel talks directly to the IDE controller, 
and has probably overwritten the disk manager anyway).

When you say that Linux doesn't recognise the entire disk, what exactly do you 
mean? Does the kernel load successfully?

> Are there any steps I'm missing here (e.g. is changing fstab all I need
> to do to let my system know where everything's moved to?).  Or is there
> a simpler way?

In general, I've found that Linux Just Works with any size of disk; because it 
bypasses the BIOS, BIOS limitations are irrelevant. Disk managers are a red 
herring; they only affect DOS and Windows (and other real-mode code).

However, there is one place where problems can arise: loading the Linux kernel 
in the first place. This is done using LILO, which uses the BIOS. Do to 
various BIOS limitations, they can only reliably access the first gigabyte or 
so of disk.

What I do is very simple: for any bootable drive, I create a 10MB boot 
partition as the first thing on the disk. This gets mounted on /boot, and LILO 
and my kernels go in it. This partition is set active. I then install LILO 
itself on the MBR of the drive.

Now when I boot, the kernel will be loaded from this tiny partition, thus 
guaranteeing that it's in the range the BIOS can access. Once it's loaded, we 
can happily ignore the BIOS until reboot time.

[insert interesting .sig here]

More information about the Sclug mailing list