首页 > 其他 > 详细

CentOS7.2升级内核

时间:2021-03-30 19:31:03      阅读:50      评论:0      收藏:0      [点我收藏+]

1.安装编译工具

yum -y install gcc gcc-c++ ncurses ncurses-devel cmake elfutils-libelf-devel openssl-devel

或者可以安装开发工具包

yum groupinstall "development tools"

2.下载内核源码并解压进入源码安装包

推荐下载地址https://www.kernel.org/

cd /usr/src && wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.12.3.tar.xz && tar -xvf linux-4.12.3.tar.xz && cd linux-4.12.3

3.清理内核源码目录(如果之前编译过内核,可以执行本步骤清理)

make mrproper

make mrproper命令会删除所有的编译生成文件、内核配置文件(.config文件)和各种备份文件

4.使用make menuconfig菜单来订制内核功能

可以使用当前系统的config文件作为模板

cp /boot/config-3.10.0-514.el7.x86_64  .config

然后make menuconfig,进入编译配置界面
此处每一个有三种选择

[  ] :不选  
[ *] :集成到vmlinux文件中  
[M ] :集成到模块中  

技术分享图片

其实对应着.config文件中:
=y:打到核心里,以后放在vmlinux中
=m:模块方式,以后就表现为ko文件
not set:该功能不启用

技术分享图片

注:配置内核的方法主要有如下几种:

#make menuconfig  //基于ncurse库编制的图形工具界面  
#make config  //基于文本命令行工具,不推荐使用  
#make xconfig  //基于X11图形工具界面  
#make gconfig  //基于gtk+的图形工具界面  

5.执行make编译,时间会稍有点长~~

make

技术分享图片
make其实包含了两步:make bzImage和make modules

make bzImage — 编译基本的内核(make menuconfig这一步中选[ *]的部分),并制成压缩镜像
make moudles — 编译内核模块(make menuconfig这一步选择[M ]的部分)
make modules_install — 将上一步编译好的模块(.ko文件)拷贝到/lib/modules/liunx-x.xx.x文件夹,内核启动时需要加载的模块,会在这个路径下寻找
make install — 编译出来的压缩内核镜像拷贝到/boot/文件夹下,并且修改/boot/grub2/grub.cfg这个grub配置文件

或者make –jN以多线程编译,N代表线程数,比如电脑是双核4线程,N填4
编译大概需要2个小时左右

6.安装模块

make modules_install

技术分享图片

安装完毕后可以到/lib/modules目录下查看
技术分享图片

7.执行make install 安装内核相关文件

make install

技术分享图片

安装完毕后可以到/boot目录下查看

8.安装完成后修改默认内核启动项

cat /boot/grub2/grub.cfg | grep menuentry //查看系统可用内核 
grub2-set-default ‘CentOS Linux (4.12.3) 7 (Core)’ //修改开机默认使用的内核

技术分享图片

技术分享图片

9.重启电脑后uname -r查看内核版本

reboot

技术分享图片

uname -r

技术分享图片

安装完成~~

CentOS7.2升级内核

原文:https://www.cnblogs.com/muen2020/p/14597974.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!