教你如何快速编译安装Linux新内核

(1)下载源码文件

 先在内核官网(www.kernel.org/)上下载最新版本的内核到桌面上,然后rz拷到linux系统上,找到一个空目录如/app/tmp,将之移到/app/tmp中,然后再解包解压,就会生成一个目录

教你如何快速编译安装Linux新内核_第1张图片

 

(2)准备文本配置文件.config

在/boot下有个文件/boot/config-3.10.0-514.el7.x86_64,这个文件定义了在编译内核的时候,那些特性,哪些功能启用了,哪些功能没启用,哪些是以模块方式还是打到核心,就是在编译内核的时候,以这个文件为模板,在这个模板基础之上来修改特性,所以先将这个文件拷到linux-4.13.2目录下,并命名为隐藏文件.config

cp  /boot/config-3.10.0-514.el7.x86_64  /app/tmp/linux-4.13.2/.config

 

(3)安装包组  yum groupinstall "development tools"

yum groupinstall "development tools"

 

(4)配置内核选项 make menuconfig

cd /app/linux-4.13.2/ 进入到这个目录下,make menuconfig,但是会提示错误,缺少了ncurses包

教你如何快速编译安装Linux新内核_第2张图片

所以再把这个包安装了, yum  install  ncurses-devel ,安装之后再次make menuconfig

教你如何快速编译安装Linux新内核_第3张图片

然后就可以成功了(如果还没有成功,提示你缺失了包,那你就继续把这个缺失了的包加上-devel,用yum安装(yum install 缺失包-devel)。)进入了内核菜单项,我们可以自己定制内核版本名字和开启ntfs功能(默认是不开启的)

教你如何快速编译安装Linux新内核_第4张图片

教你如何快速编译安装Linux新内核_第5张图片

定制内核版本名字

教你如何快速编译安装Linux新内核_第6张图片

教你如何快速编译安装Linux新内核_第7张图片

启动ntfs功能

教你如何快速编译安装Linux新内核_第8张图片

进入子菜单,ntfs文件系统在最下面,一直往下翻就可以找到

教你如何快速编译安装Linux新内核_第9张图片

教你如何快速编译安装Linux新内核_第10张图片

教你如何快速编译安装Linux新内核_第11张图片

其他配置就不改了,然后退出,yes保存

 教你如何快速编译安装Linux新内核_第12张图片

通过菜单修改了内核选项,也就修改了.config这个文件

 教你如何快速编译安装Linux新内核_第13张图片

 

(5)开始编译

date >> /app/date.log ; make -j 8 ;date >> /app/date.log; for i in {1..10};do echo -e "\a";sleep 0.5;done

其实只需要make -j 8就可以了,我写这么长,是为了统计此次编译花了多长时间,并且在编译完之后,会发出10次响声来提醒我编译完成了。

初次编译,会有一些错误出现,提示你有些包没有安装

我们用还是用yum install openssl-devel -y安装,然后再次编译,这次没有错误了,时间可能有点长,我的电脑不太好,花了55分钟才编译好

 教你如何快速编译安装Linux新内核_第14张图片

编译完成之后我们来看一下这个目录有多大呢?9.2G,所以我们的虚拟机所在的磁盘必须预留有10G以上的空间,不然编译无法完成

 

(6)安装模块make modules_install

make modules_install

 教你如何快速编译安装Linux新内核_第15张图片

我们安装模块完之后,在/lib/modules目录下就会出现新的内核

 

(7)安装内核相关文件make install

安装bzImage为/boot/vmlinuz-VERSION-RELEASE

生成initramfs文件

编辑grub的配置文件

安装完之后,我们再进入/boot下看看,发现已经生成了vmlixuz和initramfs文件

教你如何快速编译安装Linux新内核_第16张图片

再查看/boot/grub2/grub.cfg,发现已经生成了我们安装的新内核的启动菜单

教你如何快速编译安装Linux新内核_第17张图片

好了编译安装内核到此已经结束了,然后再重启就行了

教你如何快速编译安装Linux新内核_第18张图片

(8)卸载内核 

如果我们编译安装新内核之后,在使用的过程冲发现各种bug,和我现有的系统软件不兼容,我想删了这个内核,那么怎么删呢?

1.删除/lib/modules/目录下不需要的内核库文件

2.删除/usr/src/linux/目录下不需要的内核源码

3.删除/boot目录下启动的内核和内核映像文件

4.更改grub的配置文件,删除不需要的内核启动列表

你可能感兴趣的:(linux,内核编译安装,centos)