You can get it from the mirrors here:
kernel.org/mirrors
or here:
kernel.org.
Check our our article on compiling the Linux kernel.
One trick we’d like to remind you of from the article is to use “make oldconfig” to migrate your old .config file (usually in /usr/src/linux). You will be asked about just the options that have changed in the newest kernel. You can’t simply just copy your old .config file, and you certainly don’t want to try and go through all those options either.
Another thing that you may or may not be aware of is that you can compile a kernel for any machine with any other machine. If you have a nice, fast machine, make a backup of your existing .config file and just copy the .config file for the machine you want to compile the new kernel for into /usr/src/linux. Just for kicks we run “make distclean” before we copy the new .config over. Be careful, since this will nuke the existing .config file along with any other traces of the old kernel configuration.
We did have a problem compiling with NTFS support, but, hahaha, we don’t have an NTFS partition anymore, so we just got rid of the feature in the kernel config. For those of you who need NTFS support, it appears to be broken, or it works differently. Our config worked fine with Kernel 2.4.6.
One final problem we had was with vmware, but this has been fixed. You can get a replacement vmmon.tar here:
ftp://platan.vc.cvut.cz/pub/vmware/vmmon-for-2.4.7-only.tar.gz. Works fine for 2.4.9. Just make a backup of the current vmmon.tar, probably in /usr/lib/vmware/modules/source/, and replace it with the above file. Then, just re-run vmware-config.pl.