centos7 升级内核

用户头像
唯爱
关注
发布于: 2020 年 06 月 16 日

一、安装elrepo



查看当前版本号:

[root@hadoop1server build]# uname -a
Linux hadoop1server 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36:42 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux



目前centos7版本中提供有kernel-lt和kernel-ml 版本内核



网址:https://elrepo.org/linux/kernel/el7/x86_64/RPMS/



(1)导入公钥:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

如果报错:

[root@hadoop1server build]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
curl: (35) Peer reports incompatible or unsupported protocol version.
error: https://www.elrepo.org/RPM-GPG-KEY-elrepo.org: import read failed(2).

更新如下安装包:

yum update -y nss curl libcurl



(2)下载ELRepo的rpm安装包

wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/elrepo-release-7.0-5.el7.elrepo.noarch.rpm



(3)安装rpm包



[root@hadoop1server build]# rpm -ivh elrepo-release-7.0-5.el7.elrepo.noarch.rpm
Preparing... ################################# [100%]
Updating / installing...
1:elrepo-release-7.0-5.el7.elrepo ################################# [100%]
[root@hadoop1server build]#

(4)查找可用的安装包

yum --disablerepo="*" --enablerepo="elrepo-kernel" list available






(4)安装最新版内核

[root@hadoop1server build]# yum --enablerepo=elrepo-kernel install kernel-ml.x86_64 kernel-ml-devel.x86_64
Warning: RPMDB altered outside of yum.
Installing : kernel-ml-devel-5.7.2-1.el7.elrepo.x86_64 1/2
Installing : kernel-ml-5.7.2-1.el7.elrepo.x86_64 2/2
Verifying : kernel-ml-5.7.2-1.el7.elrepo.x86_64 1/2
Verifying : kernel-ml-devel-5.7.2-1.el7.elrepo.x86_64 2/2

Installed:
kernel-ml.x86_64 0:5.7.2-1.el7.elrepo kernel-ml-devel.x86_64 0:5.7.2-1.el7.elrepo

Complete!




二、启用新版本内核

(1)查看内核启动顺序

如下所示启动顺序为:0

[root@hadoop1server build]# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (5.7.2-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (5.7.2-1.el7.elrepo.x86_64) 7 (Core) with debugging
CentOS Linux 7 (Core), with Linux 3.10.0-229.el7.x86_64
CentOS Linux 7 (Core), with Linux 0-rescue-ef212bd2f49c492cbe57f77e402a1841




(2)修改内核启动顺序为0

[root@hadoop1server ~]# vim /etc/default/grub

GRUB_TIMEOUT=5
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet"
GRUB_DISABLE_RECOVERY="true"


设置:GRUB_DEFAULT=0

(3)用命令来创建内核配置

[root@hadoop1server ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.7.2-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-5.7.2-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-229.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-229.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-ef212bd2f49c492cbe57f77e402a1841
Found initrd image: /boot/initramfs-0-rescue-ef212bd2f49c492cbe57f77e402a1841.img
done
[root@hadoop1server ~]#




(4)重启服务器:reboot

备注:安装完成后,可以直接使用如下命令而配置后启动。

grub2-set-default 0
reboot



三、ELRepo内核说明

ELRepo有两种类型的Linux内核包,kernel-lt和kernel-ml。 他们之间有什么区别?

kernel-ml软件包是根据Linux Kernel Archives的主线稳定分支提供的源构建的。 内核配置基于默认的RHEL-7配置,并根据需要启用了添加的功能。 这些软件包有意命名为kernel-ml,以免与RHEL-7内核发生冲突,因此,它们可以与常规内核一起安装和更新。

kernel-lt包是从Linux Kernel Archives提供的源代码构建的,就像kernel-ml软件包一样。 不同之处在于kernel-lt基于长期支持分支,而kernel-ml基于主线稳定分支。



用户头像

唯爱

关注

天行健,君子以自强不息~ 2018.03.22 加入

梦想还是要有的,万一实现了呢!

评论

发布
暂无评论
centos7升级内核