Search

Chapter 3. Kernel Upgrades

download PDF
Make sure to install the latest kernel where all proprietary drivers, if applicable, are certified and supported. Note that proprietary drivers are often installed under /lib/modules/<kernel-version>/kernel/drivers/addon. For example, the EMC PowerPath drivers can be found in the following directory when running the 2.4.21-32.0.1.ELhugemem kernel:
$ ls -al /lib/modules/2.4.21-32.0.1.ELhugemem/kernel/drivers/addon/emcpower
total 732 
drwxr-xr-x    2 root     root         4096 Aug 20 13:50 . 
drwxr-xr-x   19 root     root         4096 Aug 20 13:50 .. 
-rw-r--r--    1 root     root        14179 Aug 20 13:50 emcphr.o 
-rw-r--r--    1 root     root         2033 Aug 20 13:50 emcpioc.o 
-rw-r--r--    1 root     root        91909 Aug 20 13:50 emcpmpaa.o 
-rw-r--r--    1 root     root       131283 Aug 20 13:50 emcpmpap.o 
-rw-r--r--    1 root     root       113922 Aug 20 13:50 emcpmpc.o 
-rw-r--r--    1 root     root        75380 Aug 20 13:50 emcpmp.o 
-rw-r--r--    1 root     root       263243 Aug 20 13:50 emcp.o 
-rw-r--r--    1 root     root         8294 Aug 20 13:50 emcpsf.o 
$
Therefore, when you upgrade the kernel you must ensure that all proprietary modules can be found in the right directory so that the kernel can load them. To check which kernels are installed, run the following command:
$ rpm -qa | grep kernel
To check which kernel is currently running, execute the following command:
$ uname -r
For example, to install the 2.4.21-32.0.1.ELhugemem kernel, download the kernel-hugemem RPM and execute the following command:
# rpm -ivh kernel-hugemem-2.4.21-32.0.1.EL.i686.rpm

Note

Never upgrade the kernel using the RPM option '-U'. The previous kernel should always be available if the newer kernel does not boot or work properly.
To make sure the right kernel is booted, check the /etc/grub.conf file if you use GRUB and change the "default" attribute if necessary. Here is an example:
default=0
timeout=10 
splashimage=(hd0,0)/grub/splash.xpm.gz 
title Red Hat Enterprise Linux AS (2.4.21-32.0.1.ELhugemem)
	root (hd0,0) 
	kernel /vmlinuz-2.4.21-32.0.1.ELhugemem ro root=/dev/sda2
	initrd /initrd-2.4.21-32.0.1.ELhugemem.img 
title Red Hat Enterprise Linux AS (2.4.21-32.0.1.ELsmp) 
	root (hd0,0) 
	kernel /vmlinuz-2.4.21-32.0.1.ELsmp ro root=/dev/sda2
	initrd /initrd-2.4.21-32.0.1.ELsmp.img
In this example, the "default" attribute is set to "0" which means that the 2.4.21-32.0.1.ELhugemem kernel will be booted. If the "default" attribute would be set to "1", then 2.4.21-32.0.1.ELsmp would be booted. After you installed the newer kernel reboot the system. Once you are sure that you do not need the old kernel anymore, you can remove the old kernel by running:
# rpm -e <OldKernelVersion>
When you remove a kernel, you do not need to update /etc/grub.conf.
Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.