Q. How do I install Linux kernel source code and headers under RHEL 5 or CentOS 5 Linux operating system?
A. Both CentOS and RHEL 5 includes following packages:
a) Kernel-headers : It includes the C header files that specify the interface between the Linux kernel and userspace libraries and programs. The header files define structures and constants that are needed for building most standard programs and are also needed for rebuilding the glibc package.
b) kernel-devel : This package provides kernel headers and makefiles sufficient to build modules against the kernel package.
c) Actual kernel source code : You can always download actual source code here. Look for kernel*.rpm file.
Rhel / CentOS 5 install kernel headers
Use yum command as follows:
# yum install kernel-devel Kernel-headers
Install kernel source code
Type the command as follows:
# cd /tmp
# wget ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/kernel-2.6.18-8.1.8.el5.src.rpm
# rpm -ivh kernel-2.6.18-8.1.8.el5.src.rpm
Note change version number as per your current kernel.
For recompiling or adding a new module or device driver you just need kernel-devel and Kernel-headers packages. To rebuilt kernel rpm goto /usr/src/redhat/SPECS directory, modify kernel spec file and use rpmbuild command to rebuild rhel/centos kernel rpm.