[CoLoCo] how do I install another kernel

Kevin Fries kfries at cctus.com
Mon Feb 25 21:03:42 GMT 2008


On Sun, 2008-02-24 at 22:06 -0700, Jim Hutchinson wrote:

> Thanks for the links. Those look useful. However, I'm still unclear
> about how I get a new copy of a kernel installed that I can tweak.

Simplistic guide to how Linux Boots:

Grub will fire from the boot sector of your hard drive (default)
Grub will load a file called menu.lst
>From Menu.lst it will offer you a series of kernels to load.
When selected from the menu, the entry in the menu.lst file will identify a kernel
optionally, menu.lst will also list an initrd file

There are other options, but this is the simplistic version

Once identified, it will load the vmlinuz... file
if configured it will mount the initrd file if noted as the root file system (its a tar.gz file)

This bootstraps the system. in only the most generic way.
It will then use the very generic system to load your system.

initrd is a tar.gz file that acts as the root file system during boot.
When you configure your kernel, you have the option of building the
drivers into kernel, or as a loadable module.  Upon boot, if the kernel
detects a device and that driver was not built in, but instead marked as
<M> for module, it expects to find that driver in initrd.  The directory
structure in initrd is exactly as you would expect it to be in your
regular directorys.

Once the kernel is up, it then starts your normal bootup system, reading
your init.rc, your run levels, etc.

To add a kernel, simple compile one, give it a unique extention, and
place it in your /boot.  For example, my current system has a kernel
named:

vmlinuz-2.6.22-14-generic

I can create one with reiser filesystem compiled into the kernel called:

vmlinuz-2.6.22-kevin-reiser4builtin

Adding a new section to the menu.lst file allows me to boot to that
kernel, without worrying about harming my regular kernel.  If I have an
initrd with other drivers not built in, that file will be named:

initrd-2.6.22-kevin-reiser4builtin

Hope this makes sense...

Good Luck

-- 
Kevin Fries
Senior Linux Engineer
Computer and Communications Technology, Inc
A Division of Japan Communications Inc.



More information about the Ubuntu-us-co mailing list