Linux升级内核--编译安装

读前须知:

有的新功能只有新版的linux内核才支持. 所以我们可能会遇到升级内核的情况

目前最新的稳定版本是5.9.14, 但是编译该版本的内核需要高版本的gcc, 生产环境gcc尽量保持与发行版本一致

所以我们本次环境以5.5.9为例

kernel官网:https://www.kernel.org/

kernel-5.5.9国内地址:https://mirrors.tuna.tsinghua.edu.cn/kernel/v5.x/linux-5.5.9.tar.gz

1.下载kernel并解压

得提前准备14GB的空间, 解压内核要1G, 编译之后要占12GB

wget https://mirrors.tuna.tsinghua.edu.cn/kernel/v5.x/linux-5.5.9.tar.gz
tar -xvf linux-5.5.9.tar.gz -C /usr/local
cd /usr/local/linux-5.5.9

2. 设置环境

主要是安装一些常用的依赖, 现在不安装,等编译时候报错再安装也一样的. 因为我安装过的, 所以知道有哪些依赖

yum install elfutils-libelf-devel bc ncurses-devel flex bison -y

3.配置内核

3.1

我们编译内核的原因是因为我们要定制它, 但是有好几千个选项, 我们不可能一个个去选, 我们可以参考其它发行版本的配置,做一点点修改

cp -p  /boot/config-3.10.0-1127.el7.x86_64 /usr/local/linux-5.5.9/.config  #版本要换成你自己的

3.2 编辑内核配置

CONFIG_XXX=y 的表示直接编译到二进制文件里的,

CONFIG_XXX=m 是编译为模块的

3.2.1 方法1 图形化

我们可以用make menuconfig配置

make menuconfig

4.3 安装内核

make install

至此安装结束, 接下来就是测试了

5.测试并设置默认启动内核

5.1测试

就直接重启,重启的时候选择我们刚才编译的内核

6. 内核rpm包

编译安装太麻烦,

也可以去下载编译好的rpm包来升级,

也可以自己编译好了做成RPM包,

也可以直接tar打包然后拷贝到模板环境再安装都是可行的

做RPM包的时候最好是参考官网给的SRPM来做

发行版本官网一般都有SRPM目录来放RPM源码包的

如centos7.8的内核SRPM包: https://archive.kernel.org/centos-vault/7.8.2003/os/Source/SPackages/kernel-3.10.0-1127.el7.src.rpm

感兴趣的可以自己去整整, 也可以参考我之前写的nginx制作为RPM包 ,虽然不够专业,但是够简单

特别说明: 生产环境尽量别升级内核, 除非你很想要某个新功能. 稳定大于一切!!!

本站文章资源均来源自网络,除非特别声明,否则均不代表站方观点,并仅供查阅,不作为任何参考依据!
如有侵权请及时跟我们联系,本站将及时删除!
如遇版权问题,请查看 本站版权声明
THE END
分享
二维码
海报
Linux升级内核--编译安装
目前最新的稳定版本是5.9.14, 但是编译该版本的内核需要高版本的gcc, 生产环境gcc尽量保持与发行版本一致
<<上一篇
下一篇>>