CentOS试编译内核

来源:互联网 发布:杭州乐其网络待遇 编辑:程序博客网 时间:2024/04/28 23:41
// 环境:CentOS 6.8 ( 2.6.32-642.el6.x86_64 内核 )
 
1.从 www.kernel.org 下载相应版本的内核打包文件,我下载的是 linux-2.6.38.tar.xz
 
2.将内核打包文件解压到 /usr/src/kernels/ 目录下,进入 linux-2.6.38 文件夹下
 
3.因为我是第一次编译这个内核文件,先键入 make mrproper 来将以前进行过的内核功能选择文件删除掉
 
4.开始挑选内核功能( make xxxconfig ),我采用 make menuconfig 的方式进行选择。在我的环境下出现了 "requires the ncurses libraries" 的错误提示,搜索的结果是安装 libncurses5-dev 就可以了,但是使用 yum search libncu* 楞是一个相关的没有寻找到;在百度经验上看到解决方法是: yum install ncurses、yum install ncurses-devel( 为了后面的模块编译不和之前已经编译过的冲突,需要在 General Setup 内的 Local version 输入名称,我第一次编译的时候没有注意到这个问题,只能把当前系统的 modules 整个备份 )

 

5.make bzImage

    完成后生成的内核文件是 ./arch/x86/boot/bzImage 


 
6.make modules
     
7.make modules_install
    在第四步更改了 Local version 的话,会在 /lib/modules/ 文件夹下生成对应名称的模块文件夹
    之前以为不管怎样都要覆盖当前系统的 modules 文件夹,真的执行了这个命令之后,会在 /lib/modules/ 文件夹下创建新的 2.6.38 文件夹,也就不用做备份了,因为我当前的 modules 是 2.6.30 的,名称版本啥的不一样 

 


8.移动新内核到 /boot 下,并保留旧内核文件
 

9.新建相对应的 Initial Ram Disk


 
10.编辑开机菜单( grub )
 

11.开机时选择加载新内核,测试是否能够正常开机


看到这一步了感觉很激动啊……


我记得安装了CentOS 6.8第一次开机就是这样的界面,难道成功了?


我还是太天真了……

找到个解决的方法:http://blog.csdn.net/hebdzw/article/details/46638285 大家可以参考一下

另外,我编译内核的时候参考的是鸟哥私房菜的对应章节,感兴趣的可以看一下。

0 0
原创粉丝点击