
我编译内核的方法是参照红联的方法做的,编译的内核是2.6.24.4,使用的Linux的发行版是Ubuntu 7.10。
第一步,安装必要的工具和软件包,有libncurses5-dev、build-essential、bin86、kernel-package、make、ibqt3-headers和libqt3-mt-dev,最后两个软件包是可选的。如果你只是用文本模式来配置内核,那就不需要安装这两个软件包。
sudo apt-get install libqt3-headers libqt3-mt-dev libncurses5-dev build-essential bin86 kernel-package make
这些软件包是必须的,如果你没有安装这些软件包,那么你的内核是完全编译出来的,或者编译后会出现很多问题的。
第二步,从kernel.org下载最新的Linux内核的稳定版本,然后放到/usr/src的目录里然后解压。
cd /usr/src
sudo tar zxvf linux-2.6.24.tar
cd linux-2.6.24
如果是有内核的更新补丁的话,可以下载最新的内核补丁,先打不定然后再编译。把内核的不定文件复制到已经解压后的内核目录里,然后解压。
bzip2 patch-x.y.z.bz2 | patch -p1
第三步,配置内核。使用make menuconfig这个命令,如果想图形化配置的话,就是用make xconfig这个命令,不过首先是要安装qt库的两个软件包。
make menuconfig 或 make xconfig
这里配置内核是根据你的电脑的配置而做出的,每个人的机器都不一样,需要的东西也是不一样,所以我就不在这里详述了。
第四步,编译内核。编译内核其实是很简单的事情。只需要两三个命令就OK了。
make //编译内核
make modules //编译内核模块
make modules_install //安装内核模块
make install //安装内核
make headers_install //安装内核头文件(但是会覆盖旧内核的头文件。)
make bzImage //把内核保存到/usr/src/linux-2.6.24/arch/i386/boot/下
这样就大功告成了,然后就是修改启动项即可。
第五步,修改启动项,首先是打开终端,然后利用vim或者emacs等编辑器修改/boot/grub/menu.lst文件。在这个文件里加入如下内容。
title Ubuntu, kernel 2.6.24
root (hd0,0)
kernel /boot/vmlinuz-2.6.24 root=UUID=d7e2cf74-ebf5-4c78-ac2c-9f85a9809eae ro
initrd /boot/initrd-2.6.24.img
需要说明的是(hd0,0)是你安装系统的位置,这方面是要十分注意,特别是安装Windows和Linux双系统的用户。UUID是安装系统的分区的特有的,每一次格式化这个分区以后都会改变的,或者你可以查看fstab这个文件。
cat /proc/fstab
结语,编译内核不会是很难的东西,也不会很麻烦,不过真的会学到不少东西的,大家试一试吧!
没有评论:
发表评论