James' Mandrake 9.0 2.4.2x Kernel Build


Download

I downloaded my kernel source from ftp://planetmirror.com/pub/linux/kernel/v2.4/linux-2.4.20.tar.bz2 and put it into a folder in my home drive ~/downloads/kernel/2.4/

cd ~/downloads/kernel/2.4/

# unpack it
buzip -c linux-2.4.20.tar.bz2 | tar xv

# I just learnt an easier way to unpack it

tar -jxvf linux-2.4.21.tar.bz2

Patch


I got kernel patches from http://members.optusnet.com.au/ckolivas/kernel/

001_o1_pe_ll_030412_ck_2.4.20.patch.bz2
002_aavm_030226_ck_2.4.20.patch.bz2
003_rl2_021215_ck.2.4.20.patch.bz2
004_supermount_030408_ck_2.4.20.patch.bz2

I downloaded them to the dir above the kernel source then run

cd ~/downloads/kernel/2.4/linux-2.4.20

bzcat ../<patch_name>.bz2 | patch -Np1

bzcat is cool cause you don't have to do a heap of bunzipping

Configure


My config is here

I had some issues with supermount fs and also devfs make sure you get the supermount patch  set the devfs option or you wont get your system up
I stripped out all the drivers etc that I don't need because they take soooo long to compile
I used the kcontrol centres linux kernel configuration utility to edit the config run kcontrol thusly

kcontrol

Select the System Linux Kernel Configuration option
or
To get straight to it run

kcmshell linuz

Compile

Once configured I ran

make clean (I had to compile several times arrggh, so you need this to get rid of old files and compare the source tree for a recompile)
make dep bzImage modules

Install

Become root for the install section

su
make modules_install
cp arch/i386/boot/bzImage /boot/bzImage-2.4.20
cp Sytem.map /boot/System.map-2.4.20

I still don't know if an initrd is needed probably not but here is the command if you need it (nope I don't need it)

mkinitrd /boot/initrd-2.4.20 2.4.20

edit /etc/lilo.conf to add the kernel to look like such

make sure you run lilo to update the boot sector

lilo -v


James McDonald