免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1024 | 回复: 0
打印 上一主题 下一主题

Ubuntu7.04 编译内核 2.6.21.4 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-09-26 10:03 |只看该作者 |倒序浏览

                经过两天一夜的实践,终于成功编译内核2.6.21.4,经历了五次的失败,一次次的在考验着我的耐性,还好,坚持下来了,便将这两天的经历书于此处,与所有被初次编译内核的困难折磨过的朋友们共勉。
         
          本次实践最大的收获有三点:
          1. 首次尝试到了什么是真正的定制。linu把所有的自由赋予了使用者,我们应该珍惜这份尊重,并尽情地享受这种自由。内核中许多模块许多是根本不需要的,还有一些是默认的设置不合理的,都可以根据自己的具体情况更改。
          2. 以前遗留的问题得到了解决。现在我的刻录机能读盘了,在编译内核的时候,去掉了scsi模拟ide设备的模块,这样,2.6以后的内核就可以正常识别刻录机了。
        3.
意外的惊喜。本来在2.6.20.16下,使用的是Ubuntu带得显卡驱动,但是无论怎么调,刷新率都到不了60HZ,并且,如果使用这个
xorg.conf,新内核根本无法进入Xwindows,所以,我又把xorg.conf改回刚装好Ubuntu时没换驱动时的状态,结果新内核进入了
Xwindows,并且刷新率为60HZ,真是意外的惊喜,新内核的兼容性可是好。
           
          现在反省下为什么会失败那么多次:
          1.  网上的编译方法得版本太多了,随着内核的升级,有些版本 就太老了,不免发生了些逻辑上的混乱。
          2,  第一次编译内核,可是不知深浅,在配置内核的时候,有些模块删掉了,结果无法启动。
          编译步骤如下:
          1. 到官方网站下载内核 http://kernel.org/pub/linux/kernel/v2.6
              解包到 /usr/src 目录下,命令:
                     sudo tar -xvjf linux-2.6.21.4.tar.bz2
          2. 进入到编译目录中,此后的所有操作均在该目录下进行。
                     cd /usr/src/linux-2.6.21.4/
              配置内核,推荐使用xconfig,非常直观,图形界面,需要Qt,非常稳定,编译了六次没有出现意外。
                     sudo make xconfig
              选项很多,不明白的,默认就可以了,可参考文章:
                     http://lamp.linux.gov.cn/Linux/kernel_options.html
              配置好了,保存,在目录中会创建.config文件,编译的时候是根据此文件进行。
          3.开始编译:
     自2.6内核开始,就不用make dep了,依赖关系会自动维护,并且命令也减少了,以往是:
                     sudo make dep
                     sudo make clean
                     sudo make bzImage
                     sudo make modules
                      sudo bzImage install
                     sudo make modules_install
              现在仅需要:
                     sudo make                //时间会很长
                     sudo make modules_install
                     sudo make install      //有些资料显示,这个命令可以自动更改/boot/grub/menu.lst,可是我的实践中并没有成功,而且还有错误
              本来到此因改结束了,可是在sudo make install后,并没有产生预期的结果,/boot/grub/menu.lst并没有改动,因此还得执行下述命令:
                     sudo mkinitramfs -o /boot/initrd.img-2.6.21.4 2.6.21.4
                     sudo gedit /boot/grub/menu.lst
              加入如下内容:
                     title             [color="#339966"]Ubuntu, kernel 2.6.21.4
                     root            (hd0,6)
                     kernel            [color="#339966"]/vmlinuz-2.6.21.4 root=UUID=2f48ce41-ead0-463e-af93-b0503de13273 ro quiet splash
                     initrd         [color="#339966"] /initrd.img-2.6.21.4
                     savedefault
               绿色的字体是根据需要更改的,其他的是复制的别的核心启动项的。
               
          到此,编译,安装结束,重新启动,就可以进入新核心的系统了。因为这个核心太新了,源里还没有它的头文件,虚拟机就没法用了,等以后升级吧。
         为了这一个问题,被“残酷”地折磨了将近30个小时,但心情还是蛮愉快的。linux让我们能在痛苦中体会自由带来的乐趣,也可谓之奇。希望每一个编译过内核的朋友都能享受这一过程。
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/43296/showart_390038.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP