在Ubuntu下编译Linux内核


以下操作均要root权限.sudo su(这样子比较方便,一次性取得root权限)

1:下载好linux-2.6.39.tar.bz(内核文件)

2:tar -jxvf /path/to/linux-2.6.39.tar.bz  -C /usr/src/(解压到/usr/src文件夹下,老大linus说解压到任何目录下都是可以的^_^,老大都这么说了,应该是真的.不过我没有试过,网上的教程都是解压到这个目录里的*_*)

3:apt-get install buile-essential(安装编译环境)

   apt-get install ncurses5-dev(安装终端下的菜单环境必需的库文件)

   apt-get install glibc6(同上)

4:cd /usr/src/linux-2.6.39/(进入所解压的内核目录下)

5:make menuconfig(编译并生成终端菜单,这里是进入菜单,由你来选择需要什么或不需要什么功能......操作系统的功能就是从这里开始决定的!!!)

6:选择完功能后记得保存哦......即菜单的最后一项......

7:make -j4 (开始编译,-j4这个选项要根据你的电脑配置来决定,硬件好的话可以加速编译....,这个个程是非常久的.我等了好几次,呵呵,我一共编译了3次才成功.^_^,每次大约几乎两个小时左右.......我的配置是i3CPU+2GB内存+H55主板)

8:make install(正式安装内核)

9:make modues(编译模块,别告诉我什么是模块!!!!^_^其实我也不知道.......)

10:make modules_install(安装模块......)

11: mkinitramfs -v -o /boot/initrd.img-2.3.39 (其中的-o是英文的o,linux中选项几乎都是英文的,数字的我还没有见过.......它表示你要它生成这个文件到哪个目录,-v表示详细输出其生成过程.这个文件是必须.........想了解的话,google一下...个人建议关于研究和学习方面的搜索引擎,个人觉得还是goole最好用.......)

12:修改一下/boot/grub/grub.cfg(这个文件是配置grub2引导的文件,官方说不要直接编辑这个文件,但是个人试过了,是可以直接编辑的,不过一定要按照其中的语法来做,否则后果自负...^_^)

13:最后.update-grub2

若输出中显示出你所编译的内核的版本就表示正确了......

然后就reboot选择你的新内核吧.......................................

我个人编译的是直到现在是最新稳定版的内核(linux-2.6.39.tar.bz)(开发版或测试版,个人觉得没有编译的价值,这些一本是linus本人或其团队来测试其中的bug的,我们编译来使用的,所以还是选择稳定版的来编译吧.........)

提醒:

下图中的内核版本结尾是可以自己在选择功能时可以添加一些说明到内核版本尾的(比如我的是添加了yangzhiyong)^_^

在Ubuntu下编译Linux内核

注意:下图中的红线部份都是必不可少的哦.........这些是在make install, update-grub2时自动生成的......

在Ubuntu下编译Linux内核

你编译完后,看看里面的文件是否有这类文件.注意内核版本号的差别^_^......

其实编译内核,也没有我们想像得这么难.......还是有一句话说得好,你不去试试,你怎么知道你不行呢?

You never know what you can do , till you try it !!!

相关内容