Linux kernel是一种开源的类Unix操作系统宏内核,最早在1991年由芬兰黑客Linus Torvalds基于C语言开发。为了修复以往版本的漏洞,或者支持新的功能,常常需要更新内核版本。
升级方法一:rpm安装
Linux内核RPM包由一个开源社区ELREPO提供,非官方版本,好处是部署速度快、操作简单。
0x1 获取当前内核版本
# 通过以下命令都可以获取当前内核版本 uname -a uname -sr cat /proc/version
0x2 导入公钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org # Redhat7/CentOS7 yum -y install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm # Redhat8/CentOS8 yum -y install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
0x3 获取可用内核版本
yum --disablerepo=\* --enablerepo=elrepo-kernel list kernel*
0x4 升级内核
# 升级至ml(最新发布版本): yum --enablerepo=elrepo-kernel -y install kernel-ml # 升级至tl(长期服务版本): yum --enablerepo=elrepo-kernel -y install kernel-lt
0x5 修改配置
编辑/etc/default/grub修改以下参数:
GRUB_DEFAULT=0
然后执行以下命令:
grub2-mkconfig -o /boot/grub2/grub.cfg
升级方法二:编译安装
源码包由官方提供,需编译安装。
0x1下载源码包
从以下地址下载对应的kernel源码包:
从官方网站下载的内核源码包是xz格式,需要安装xz解压工具,访问下载地址。xz安装方法如下:
cd <软件包位置> ./configure make && make install
0x2 部署编译环境
yum -y install gcc make ncurses-devel openssl-devel flex bison elfutils-libelf-devel yum -y upgrade
0x3 准备编译
cd {new-kernel-dir} cp /boot/config-{kernel-version} .config # 以下命令提供安装菜单,按其默认选择“save”后“ok”,随后退出菜单即可 make menuconfig
0x4 开始编译
执行以下命令,开启全部CPU核心进行编译并安装,视处理器性能约在1-5小时完成,强烈建议在编译过程中停止所有业务。
make -j `nproc` && make modules_install && make install
验证结果
完成安装后,重启操作系统,验证升级结果,本人在CentOS7.8中测试,内核版本是3.10.0,升级至最后的长期服务版本,结果如下:
原创文章禁止转载:技术学堂 » Redhat7/8升级系统内核版本详细步骤