博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Debian下编译Linux内核

Posted on 2006-05-11 01:32  叶落无痕  阅读(319)  评论(0编辑  收藏  举报

/** 主题:编译Linux内核
*  日期:2005-12-28
*  地点:lab
*/

1。下载内核
---------------
www.kernel.org下载最新的内核,这里下载的是2.6.14与补丁(这是patch-2.6.14.4.bz2)

2。打上补丁
---------------
将patch-2.6.14.4.bz2与linux-2.6.14.tar.gz放到/usr/src下,

tar zxvf linux-2.6.14.tar.gz以解压源文件。
cd linux-2.6.14
然后打上补丁:
bzip2 -dc ../patch-2.6.14.4.bz2 | patch -p1

3。开工
----------------
 在linux源代码目录里用
 sudo make mrproper 清理一下以前编译的.o文件(如果有的话)
 
 然后是config的时候了,试了一下#make config,太痛苦了,
 再试试 #make menuconfig(要先用#make mrproper清理一下先),好像出问题
 
 还是好make xconfig,好看多了。

 $>make bzImage  (获得新内核文件,大概十来分钟)
 $>make modules  (编译模块)
 $>sudo make modules_install  (安装模块)
 
 $>sudo mkinitrd -o /boot/initrd.img.2.6.14 /lib/modules/2.6.14  (最后的数字看情况办)
 $>sudo cp /usr/src/linux-2.6.14/arch/i386/boot/bzImage  /boot/vmlinuz-2.6.14
 (这样boot目录里有必须的initrd.image与vmlinuz文件了)
 $>sudo cp /usr/src/linux-2.6.14/System.map  /boot/System.map-2.6.14
 
 ========准备 /boot下的默认链接===========
 $>cd /boot
 $>sudo rm System.map
 $>sudo ln -s System.map-2.6.14 -s System.map
 
 $>sudo rm vmlinuz
 $>sudo ln -s vmlinuz-2.6.14 vmlinuz
 
 $>sudo rm config
 $>sudo ln -s config-2.6.8-2-386 config  (这个我没有修改)
 
 
 ==================================
 在GRUB加上
 =====
 title  Debian Linux kernel 2.6.14 (Rebuilded)
 root  (hd0,6)
 kernel /boot/vmlinuz-2.6.14 root=/dev/hda7 ro
 initrd  /boot/initrd.img-2.6.14
 savedefault
 boot

4.重启,Enjoy