This should be fairly simple rebuild of the kernel. I always use my user to build kernels so this guide is going to focus on doing it as "me" not "root". If you don't know how to build rpms as your user, follow this guide:
How-To create rpmbuild dir
---------------------------------------------------------------------------------------------------------------------------------
1.) choose your weapon by grabbing one of the .src.rpm's:
Fedora Core 4 - latest
Rawhide - latest
ACkernel - latest
2.) Install it:
Code:
$ rpm -ivh kernel-2.6.9-1.1021_FC4.src.rpm
3.) Change to your rpmbuild dir and patch it with fedora's kernel patches:
Code:
$ cd ~/rpmbuild/SPECS/
$ rpmbuild -bp kernel-2.6.spec
you might have to build with arch specific
$ rpmbuild -bp --target=i686 kernel-2.6.spec
target can = i386 i586 i686 x86_64
*note from man rpmbuild
-bp Executes the "%prep" stage from the spec file. Normally this
involves unpacking the sources and applying any patches.
4.) Change to the build dir and config or add more patches to your kerenl
Code:
$ cd ~/rpmbuild/BUILD/kernel-2.6.9/linux-2.6.9
$ vi Makefile <-- edit "EXTRAVERSION =" with something fancy like "EXTRAVERSION = -justin"
$ make menuconfig
*Note*
If your up to this point, you probably know what your doing with "menuconfig" so get rid of what you don't want, If you don't know what your doing, run and hide or play around tell you break some stuff Also, before the menuconfig, you could add more patches if your feeling good about your self.
5.) Build the kernel with rpm ( keeps your rpmdb clean and you can pass out your kerenls to the neighbors)
(time is just to tell you how slow your system is)
6.) Install your new kernel (after "make rpm" it willl tell you exactly were it placed it)
Code:
$ cd ~/rpmbuild/RPMS/x86_64 <--- your dir will be different depending on the <arch> i386/i686 ...
$ rpm -ivh <new-kernel-here>
7.) Check grub. (some odd reason there kernel wont "always" add it self to grub with you build it your self, odd I know, its a crap shoot)
Code:
$ sudo more /boot/grub/grub.conf <--- change to root with "su -" if you don't use sudo
If you don't see your kernel in there, look at /boot
The newest kernel/initrd will be at the bottom of the list and you can confirm by name and date when it was added. Then just edit your grub.conf to look like your previous entry's but with the new names. Whatever you do, "DO NOT DELETE" your old ones! Keep a backup of your old kernels, to be able to boot to if your new one doesn't work. If you use Nvidia cards with 3D dirivers, you can do one of 2 things. either replace /etc/X11/xorg.conf "nvidia" with "nv" then reboot or just boot to run level 3 and then run your nvidida.run again. vi /etc/inittab and change "id:5:initdefault:" to "id:3:initdefault:" Whatever floats your boat or a 3,4 and 5 step a few others will tell you about
8.) reboot
This should be pretty simple, this is just kind of a primer, you can go more in depth if you like, ( i do) just wanted to give you a place to start and have the lovely Fedora patched kernel. Patches can be a good thing , haveing your kernel patched with Fedora's patches is even a better idea, (specially if your running SELinux)
When I want some fun in my life and nothing better to do, I'll patch up my kernel and then add mm/ck/cko/nitro patches to the kernel. (only one, don't get to insane)