就在前几天,RHEL6.2 Bate版出来了。正好这两点在写软件包的安装相关博文,里面有提到内核的RPM方式升级,但实验的时候,发现用rpm方式将RHEL6.1内核升级到RHEL6.2 Bate内核的时候有些问题,所以就写下来,与大家分享。

用RMP包方式升级内核的过程其实很简单,但由于BUG的原因没有能够顺利进行。折腾了一会最终解决了问题。下面进入今天的正题:用rpm方式将RHEL6.1内核升级到RHEL6.2 Bate内核。

一、准备内核的相关RPM软件,并安装kernel-firmware

安装新内核的kernel,需要用到kernel-firmware的依赖关系。所以我们要把这两个RPM包都下载下来(感谢群友Devilkin℡给我提供这两个软件)。

[root@yufei kernel]# ls

kernel-2.6.32-202.el6.x86_64.rpm  kernel-firmware-2.6.32-202.el6.noarch.rpm在安装kernel就必需先安装kernel-firmware,那么我们就先来安装他,看看会出现什么问题/p>

[root@yufei kernel]# rpm -ihv kernel-firmware-2.6.32-202.el6.noarch.rpm

warning: kernel-firmware-2.6.32-202.el6.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f21541eb: NOKEY

Preparing…                ########################################### [100%]

file /lib/firmware/isci/isci_firmware.bin from install of kernel-firmware-2.6.32-202.el6.noarch conflicts with file from package kernel-firmware-2.6.32-131.0.15.el6.noarch

file /usr/share/doc/kernel-firmware-2.6.32/WHENCE from install of kernel-firmware-2.6.32-202.el6.noarch conflicts with file from package kernel-firmware-2.6.32-131.0.15.el6.noarch提示也没有什么错误信息,只是说两个文件是存在的。但其实这个kernel-firmware是没有安装上的。

[root@yufei kernel]# rpm -ivh kernel-2.6.32-202.el6.x86_64.rpm

warning: kernel-2.6.32-202.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f21541eb: NOKEY

error: Failed dependencies:

kernel-firmware >= 2.6.32-202.el6 is needed by kernel-2.6.32-202.el6.x86_64这个原因在官方的BUG上面有提到,具体请到这里查看,主要的解决办法是用rpm -Uvh来代替rpm -ivh安装kernel-firmware。然后再安装kernel。

这就是解决问题的关键,否则无论如何都无法进行安装kernel的,感谢群友小魔怪的帮助。

于是用rpm -Uvh kernel-firmware-2.6.32-202.el6.noarch.rpm 来安装

[root@yufei kernel]# rpm -Uvh kernel-firmware-2.6.32-202.el6.noarch.rpm

warning: kernel-firmware-2.6.32-202.el6.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f21541eb: NOKEY

Preparing…                ########################################### [100%]

1:kernel-firmware        ########################################### [100%]

[root@yufei kernel]# 呵呵,已经没有什么提示了,我们来查一下,发现他也安装上了

[root@yufei kernel]# rpm -qa |grep kernel-firmware

kernel-firmware-2.6.32-202.el6.noarch

[root@yufei kernel]# 二、安装新内核kernel

在安装了kernel-firmware的基础上,安装新内核就方便多了。

[root@yufei kernel]# rpm -ivh kernel-2.6.32-202.el6.x86_64.rpm

warning: kernel-2.6.32-202.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f21541eb: NOKEY

Preparing…                ########################################### [100%]

1:kernel                 ########################################### [100%]

[root@yufei kernel]# 注意:这里不要用rpm -Uvh。原因就是,用U参数,就直接把原内核升级了,而用i则是安装了新的内核,原内核依然是存在的。这样防止了新内核故障的产生。

[root@yufei kernel]# rpm -qa |grep kernel

kernel-firmware-2.6.32-202.el6.noarch

kernel-headers-2.6.32-131.0.15.el6.x86_64

kernel-2.6.32-131.0.15.el6.x86_64

kernel-devel-2.6.32-131.0.15.el6.x86_64

kernel-2.6.32-202.el6.x86_64

dracut-kernel-004-53.el6.noarch

[root@yufei kernel]# 呵呵,两个内核都在。

三、检查GRUB里面的信息

这一步一般情况下,都会在menu.lst里面写入新内核的启动信息,为了确保新内核安装成功,我们还是再检查一下。

[root@yufei kernel]# cat /boot/grub/menu.lst

default=0

timeout=5

splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz

hiddenmenu

title Red Hat Enterprise Linux Server (2.6.32-202.el6.x86_64)

root (hd0,0)

kernel /vmlinuz-2.6.32-202.el6.x86_64 ro root=UUID=d88d25c9-360e-42a8-b464-e16f93f8ef01 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto rhgb quiet

initrd /initramfs-2.6.32-202.el6.x86_64.img

title Red Hat Enterprise Linux (2.6.32-131.0.15.el6.x86_64)

root (hd0,0)

kernel /vmlinuz-2.6.32-131.0.15.el6.x86_64 ro root=UUID=d88d25c9-360e-42a8-b464-e16f93f8ef01 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=zh_CN.UTF-8 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto rhgb quiet

initrd /initramfs-2.6.32-131.0.15.el6.x86_64.img发现多了新内核2.6.32-202.el6.x86_64。

四、重新启动,切换到新内核,测试新系统

在重新启动前,我们先来看看旧内核的信息

[root@yufei kernel]# uname -r

2.6.32-131.0.15.el6.x86_64

[root@yufei kernel]# reboot

[root@yufei ~]# uname -r

2.6.32-202.el6.x86_64

[root@yufei ~]# 新内核可以正常工作了。

五、介绍一下内核安装的相关文件

/lib/modules/里面有个2.6.32-202.el6.x86_64文件夹

[root@yufei ~]# ls  /lib/modules/

2.6.32-131.0.15.el6.x86_64  2.6.32-202.el6.x86_64/boot/有2.6.32-202.el6.x86_64相关的文件

[root@yufei ~]# ls /boot/

config-2.6.32-131.0.15.el6.x86_64         symvers-2.6.32-202.el6.x86_64.gz

config-2.6.32-202.el6.x86_64              System.map

efi                                       System.map-2.6.32-131.0.15.el6.x86_64

grub                                      System.map-2.6.32-202.el6.x86_64

initramfs-2.6.32-131.0.15.el6.x86_64.img  vmlinuz

initramfs-2.6.32-202.el6.x86_64.img       vmlinuz-2.6.32-131.0.15.el6.x86_64

lost+found                                vmlinuz-2.6.32-202.el6.x86_64

symvers-2.6.32-131.0.15.el6.x86_64.gz

[root@yufei ~]# 至此,内核升级完成。自己慢慢享受吧!

文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux24696 人正在系统学习中 相关资源:【内存遍历工具】Cheat.Engine.V5.4.简体中文版-专业指导文档类…

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年3月25日
下一篇 2021年3月25日

相关推荐