系统相关
首页 > 系统相关> > Centos7源码升级内核至5.16.10

Centos7源码升级内核至5.16.10

作者:互联网

Centos7 源码升级内核至5.16.10

# 依赖环境安装
[root@boy ~]# yum -y install gcc gcc-c++ kernel-devel kernel-headers bison flex ncurses-develqt-develhmaccalc zlib-devel binutils-devel elfutils-libelf-devel ncurses ncurses-devel openssl-devel

# 升级GCC版本,由于5.16.10源码对gcc版本有要求了,自动的gcc无法满足编译,安装gcc 8
[root@boy ~]# yum -y install centos-release-scl
[root@boy ~]# yum -y install devtoolset-8-gcc*
[root@boy ~]# scl enable devtoolset-8 bash

# 下载5.16.10 源码包
[root@boy ~]# wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.16.10.tar.xz -O /root/linux-5.16.10.tar.xz

# 解压源码包
[root@boy ~]# unxz -v linux-5.16.10.tar.xz 
linux-5.16.10.tar.xz (1/1)
  100 %     121.7 MiB / 1,098.9 MiB = 0.111    46 MiB/s       0:23
[root@boy ~]# tar -xf linux-5.16.10.tar  

# 拷贝原有的内核配置文件,后续可在原有基础之上进行内核功能删减
[root@boy ~]# cd linux-5.16.10/
[root@boy linux-5.16.10]# cp /boot/config-$(uname -r) .config
[root@boy linux-5.16.10]# make menuconfig

# 开始编译并创建一个压缩的内核镜像,-j后边的数字表示并发编译,一般等于CPU core 数量
[root@boy linux-5.16.10]# make -j$(nproc)

# 安装内核modules,实际上就是把编译好的module拷贝到/lib/modules/5.16.10
[root@boy linux-5.16.10]# make modules_install

# 安装内核,安装完成后会在/boot目录生成三个文件,initramfs-5.16.10.img、System.map-5.16.10、vmlinuz-5.16.10
[root@boy linux-5.16.10]# make install

# 更新grub配置
[root@boy linux-5.16.10]# grub2-mkconfig -o /boot/grub2/grub.cfg
[root@boy linux-5.16.10]# grubby --set-default /boot/vmlinuz-5.16.10    #设置默认从新内核启动

# 重启系统
[root@boy ~]# reboot

# 查看重启后的内核版本
[root@boy ~]# uname -mrs
Linux 5.16.10 x86_64

标签:10,boy,Centos7,源码,5.16,内核,linux,root
来源: https://blog.csdn.net/qq_41586875/article/details/123045817