以我目前的环境为例,我的Ubuntu系统的内核版本是3.19.0,我想使用新版本的内核4.5.0来替代它,步骤如下(以下过程全部在root权限下操作): 1. 安装必备软件编译工具apt-get installlibncurses5-devbuild-essentialkernel-package 注意: 1)libncurses5-dev是为之后配置内核能运行make menuconfig程序做准备;Build-essential是编译工具,kernel-package是编译内核工具; 2)如果系统显示无法查找到这三个文件,输入apt-get update更新数据源。 2. 下载内核去 https://www.kernel.org/ 下载你需要的内核版本的源代码:linux-4.5.0.tar.xz,解压后:linux-4.5.0。 3. 将该压缩包解压后的内容拷贝到/usr/src/目录下cp -r linux-4.5.0 /usr/src/ 4. 配置内核1)建议使用当前系统配置文件,使用当前系统配置文件方法: cp /boot/config-XX.config 2)make mrproper /// 这一步可以不做! 作用是在每次配置并重新编译内核前需要先执行“make mrproper”命令清理源代码树,包括过去曾经配置的内核配置文件“.config”都将被清除。即进行新的编译工作时将原来老的配置文件给删除掉,检查有无不正确的.o文件和依赖关系,以免影响新的内核编译。 如果使用刚下载的完整的源程序包就第一次进行编译,那么本步可以省略。而如果你多次使用了这些源程序编译内核,则最好要先运行一下这个命令。 3)进入menuconfig选择load选项 make menuconfig 注:使用make menuconfig 生成的内核配置文件,决定将内核的各个功能系统编译进内核还是编译为模块还是不编译。 在这里就不介绍具体的内核配置操作,但是建议就算不打算配置什么也执行一下make menuconfig这个命令,因为如果不执行此操作的话在后面make编译内核的时候会提示你回答很多问题。内核配置可参考:
配置内核还有很多其他方法,主要区别如下: make menuconfig #基于ncurse库编制的图形工具界面 make config #基于文本命令行工具,不推荐使用 make xconfig #基于X11图形工具界面 make gconfig #基于gtk+的图形工具界面 这里选择简单的配置内核方法,即make menuconfig。在终端输入make menuconfig,等待几秒后,终端变成图形化的内核配置界面。进行配置时,大部分选项使用其缺省值,只有一小部分需要根据不同的需要选择。对每一个配置选项,用户有三种选择,它们分别代表的含义如下:
5. 编译内核make #这可能需要2~3个小时的时间。 6. 加入模块,安装内核make modules_install 编译成功后,系统会在/lib/modules目录下生成一个3.12.5子目录,里面存放着新内核的所有可加载模块(即将编译好的modules拷贝到/lib/modules下)。 make install #安装内核 即复制.config,vmlinuz,initrd.img,System.map文件到/boot目录、更新grub。对于RedHat系统以下三个grub文件自动会更新,默认启动新内核:
注:前两个配置文件是第三个的软连接。 (责任编辑:好模板) |