LINUX内核编译过程详解[UBUNTU9.04 kernel 2.6.28.9]

说在前面的话:

      话说网上资料很多.这个很感谢一些朋友的无私奉献.但是.我想鄙视一下网上那些到处乱抄的人.抄也不抄全了.这样很害人的好不好...特别是对我们这样的新手来说...很多都是误导...

 

以下是我个人在近一个月内编译内核的经验中总结出来的.仅供参考.并感谢网上给与我支持的人.THS...
---------------------------华丽的分割线-----------------------

系统环境:

UBUNTU 9.04   KERNEL 2.6.28.11

 

下载基本的工具:MODULES_INIT_TOOLS

 

下载内核:2.6.28.9


--------------------------------------------

#tar zxf linux-2.6.28.9.tar.gz /usr/src                //解压要编译的内核到/usr/src文件夹下

#cd /usr/src/linux-2.6.28.9                                //进入内核解压后的目录

#make mrproper                                                //没事先清理下

#make menuconfig                                             //配置.config文件 [这个不会配置的参考网上资料]

//因为我内核更改不大.所以用的是#make oldconfig

#make                                                                //这个包含了make bzImage & make modules两条命令

#make modules_install install                              //这个包含了make modules_install与make install

 

//以上做的就是编译内核的基本过程.这上面做完了后.你会在/LIB/MODULE目录下看见一个心的以内核名字命令的文件夹...

//下面4步.是把新编译的内核加入到引导里面去...

 

# cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.28.9      //拷贝内核镜像

# cp System.map /boot/System.map-2.6.28.9                 //建立系统符号链接

//其实这上面三步在UBUNTU下.MAKE时都帮你做好了...如果自己手动做的话.个人不建议覆盖原来的东西 ..

//因为在你内核编译配置出错了后.你还可以用原来的内核启动系统...


# /sbin/mkinitrd initrd-2.6.28.11.img   2.6.28.9

//这一步.我不知道是不是必要的.很多网上那些摘抄的人都没有提到这一句

//不过原来编译过很多次.都没有家这一步.然后修改GRUB的MENU.LST.加载新的内核启动.就会出现

//VFS什么什么的无法加载 ..系统就卡在那里无法动弹....但是如果貌似同版本的内核可以沿用原来版本的INITRD.IMG文件,比如说都是2.6的 ...

//但是UBUNTU下并没有MKINITRD命令.而是用mkinitramfs命令代替了


#mkinitramfs -o initrd-2.6.28.9.img /lib/module/linux-2.6.28.9

//前面是要生成的INITRD文件.后面是模块目录....


最后就是更改系统菜单了..恩...这个最简单了...

把MENU.LST下原来的COPY一份.改改就可以了 ..(先声明.我用的是GRUB)

好了..基本上就只这样..



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值