[sclug] booting / large hard drive nightmare

James Wyper jrwyper at yahoo.co.uk
Sun Oct 17 13:53:49 UTC 2004


I know that Linux should "just work", but it doesn't in my case!  The
kernel (currently on hda1 - a 3GB drive) will boot OK if the disk
manager isn't loaded, but then be unable to see most of hdb5 and any of
hdb6 (i.e. beyond 33GB) (so a lot of the processes that should be
spawned from init aren't).  When I first installed Mandrake the
partitioning process reported a 33GB drive not an 80GB one, until I
loaded the disk manager first.

I have also tried a recent ATA100 PCI card and that didn't work either.
  It's because I've exhausted these possibilities that I'm turning to
workarounds.

In answer to an earlier question (not cc'd to the list) I've upgraded
the bios to the latest version available from IBM.  

Bizzarely, a soft reboot (init 6) doesn't clear the disk manager code
even though it sends the machine back through its POST routine.

I have no experience of Grub but I'll look into it.

Thanks for your suggestions so far,

James.

 --- David Given <dg at cowlark.com> wrote: 
> 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]
> 
> _______________________________________________
> sclug mailing list
> sclug at sclug.org.uk
> http://www.sclug.org.uk/mailman/listinfo/sclug
>  


	
	
		
___________________________________________________________ALL-NEW Yahoo! Messenger - all new features - even more fun!  http://uk.messenger.yahoo.com


More information about the Sclug mailing list