The idea of upgrading and recompiling the Linux kernel strikes fear into many. While the steps are labor- intensive , there is nothing difficult about this process.
The easiest way to upgrade a kernel is to install a newer Red Hat Linux kernel RPM package. When installed and not upgraded, a new kernel automatically upgrades the bootloader as well. Alternatively, if the upgrade is small, you can download and install a patch.
If you want to change the configuration of a kernel, the process is long. Here s a summary of the basic steps:
Download the source code for the new kernel: tarballs from Internet sites such as ftp.kernel.org or Red Hat RPMs.
Install the RPMs associated with kernel tools such as menuconfig or xconfig .
Navigate to the directory with your kernel source code. Select a value for EXTRAVERSION in the Makefile . Back up any current hidden .config file. Clean the current source code with the make mrproper command.
Use a baseline configuration; some are available in /boot , others in the configs subdirectory. Alternatively, you could use the local .config file or create one with the make oldconfig command.
Open a kernel configuration editor using make menuconfig or make xconfig . Make your changes and save.
Set up the dependencies with the make dep command.
Create a compressed kernel image with the make bzImage command. Note the directory with the image.
Copy the kernel that you created to the /boot directory. Name it vmlinuz- xEXTRAVERSION , where x represents the version number of the kernel, and EXTRAVERSION is a variable in the Makefile .
Organize your kernel modules with make modules and make modules_install .
Create an Initial RAM disk for your new kernel with the mkinitrd/boot/initrd- xExtraVersion command.
Modify your bootloader: add a stanza with the new kernel and Initial RAM disk files.
In the next chapter , we ll pick up with other administrative functions. Job managers such as cron and at allow administrators to run programs on an automated basis. Other key administrative skills include log file analysis and service management.