最近要交操做系统的做业,其中一项就是编译Linux系统的最新的内核。html
CentOS和RedHat是两个很类似的Linux操做系统,比较稳定,Ubuntu则是另外一种比较流行的版本。linux
我在电脑上安装的是最新版的CentOS7,使用命令uname -a能够查看系统内核版本。vim
百度上有一篇讲解编译内核的教程,有参考价值,可是那个是CentOS6加上3.x的内核。操作系统
http://jingyan.baidu.com/article/414eccf61296c16b421f0a63.htmlhtm
第一步:到官网https://www.kernel.org/下载最新内核4.3,下载tar.xzblog
第二步:解压内核教程
root用户:# tar -Jxvf linux-4.2.3.tar.xz -C /usr/src/ 把文件解压到 /usr/src/ 中get
解压文件,如今通常采用 .tar.xz 的压缩格式(压缩率最高,可是压缩时间较长)。源码
/usr/src 通常而言、咱们制作linux内核的时候源码通常放在这个路径下。编译
第三步:
若是是第一次编译内核,并无上次的残留文件能够能够跳过
# make mrproper
这个步骤
注意:make clean 删除大多数的编译生成文件, 可是会保留内核的配置文件.config, 还有足够的编译支持来创建扩展模块
make mrproper 删除全部的编译生成文件, 还有内核配置文件, 再加上各类备份文件
make distclean mrproper删除的文件, 加上编辑备份文件和一些补丁文件。
第四步:
接下来是 make config 。
(具体参照 《make config 的几种类型》)
通常采用 # make menuconfig 的方式
是这个样子的:
此处须要几个包,选择最简单的yum安装,根据系统状况,缺什么装什么,已经有的就不用再安装了!
# yum -y install gcc 和
# yum install ncurses ncurses-devel。
具体配置选项能够自行查询,我是使用的默认值!
对新的内核功能选择,并生成一个 .config 的文件,内核编译安装的时候回从这里读取配置!
第五步:编译内核(时间很长,可能一个多小时)
# make 和 # make modules_install (此处命令必须进入/usr/src/linux-x-x-x/才有效,不然会报错)
可能只须要一步,看状况吧!
第六步:安装内核(时间很长,可能一个多小时)
# make install
第七步:修改默认启动内核
# vim /boot/grub2/grub.cfg
其实启动的时候会依次列出系统有的内核,从0开始数,想启动那个就设置它的顺序就OK了!
第八步:重启看到效果
完成!额,我刚刚写成了3就是这个效果,其实应该是2........