Tuesday, 11 August 2009

Kernal-Compile




Download: -

cd /usr/src

wget -c http://kernel.org/pub/linux/kernel/v...-2.6.7.tar.bz2

tar xvfj linux-2.6.7.tar.bz2

cd linux-2.6.7

make clean && make mrproper

make oldconfig ( or make menuconfig )

make bzImage

make modules

make modules_install

( i prefer this method rather then just "make" )

If you get alot of errors about .ko modules when you run make modules_install you need to update your modutils package with module-init-tools, see below.

Now to copy the files over for the kernel itself.

Quote:

cp .config /boot/config-2.6.7

cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.7

cp System.map /boot/System.map-2.6.7

mkinitrd /boot/initrd-2.6.7.img 2.6.7

You may experience an error such as this:

/dev/mapper/control: open failed: No such file or directory

if you receive that error run the following commands:

Quote:

rm -rf /boot/initrd-2.6.7.img

mkinitrd --omit-lvm-modules /boot/initrd-2.6.7.img 2.6.7

Now to add it to the grub / lilo configuration.

[Grub]

your config will look something like this. Please note you need to follow the format for your current config.

Quote:

title Red Hat Linux (2.6.7)

root (hd0,0)

kernel /vmlinuz-2.6.7 ro root=LABEL=/

initrd /initrd-2.6.7.img

Add your new entry to the top of the kernel list. Set the default to your working kernel. NOTE: the first kernel in the list is "0". (ex. default=1)

Now exit. Type "grub" at the bash prompt.

Quote:

savedefault --default=0 --once

issue that at the grub prompt then use quit to exit. Once your reboot you need to go back in and set the default to the 2.6 kernel by setting default=0

[lilo]

your config will look something like this. Please note you need to follow the format for your current config.

Quote:

image=/boot/vmlinuz-2.6.7

label=2.6.7

append="root=LABEL=/"

read-only

initrd=/boot/initrd-2.6.7.img

Leave the default as is.

Quote:

/sbin/lilo -v -v

/sbin/lilo -R 2.6.7

Once it reboots and comes back online you can change the default to be 2.6.7 and /sbin/lilo -v -v

The above tells you how to enable failsafe in your kernels. SO that if the box panics the dc tech does not have to console in he just has to reboot the box.

How to install module-init-tools:

Quote:

cd /usr/src

wget -c http://www.kernel.org/pub/linux/kernel/peo...ools-3.0.tar.gz

tar -zxvf module-init-tools-3.0.tar.gz

cd module-init-tools-3.0

./configure --prefix=""

make moveold

make install

./generate-modprobe.conf /etc/modprobe.conf

How to determine what boot loader you are using?

Quote:

dd if=/dev/hda bs=512 count=1 2>&1 | grep GRUB

dd if=/dev/hda bs=512 count=1 2>&1 | grep LILO

one of them will kick back something like:

root@w00t [~]# dd if=/dev/hda bs=512 count=1 2>&1 | grep GRUB

Binary file (standard input) matches

root@w00t [~]#

which means its using grub.

Some Misc. Info

1.) A static kernel does not need updated modutils.

2.) Fedora core 1 does not need updated modutils

3.) Redhat 9 needs ext3 compiled into the kernel not as a module.



No comments:

Post a Comment