注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

淡忘邻人

二十七,始发愤

 
 
 

日志

 
 
 
 

ubuntu 10.04 编译安装最新版本linux-2.6.36内核  

2010-10-29 20:22:28|  分类: Linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
第一步:准备工作

打开终端获得root权限:sudo su
然后安装编译内核时需要的工具:

apt-get install build-essential kernel-package libncurses5-dev libqt3-headers

 build-essential  (基本的编程库(gcc, make等)
 kernel-package   (Debian 系统里生成 kernel-image 的一些配置文件和工具)
 libncurses5-dev  (meke menuconfig要调用的)
 libqt3-headers   (make xconfig要调用的)
其他工具在升级过程中可以按提示安装

第二步:下载内核源代码linux-2.6.36.tar.bz2
请到www.kernel.org官网下载最新版本linux-2.6.36.tar.bz2内核
假设下载在root目录,然后解压到/usr/src/linux-2.6.36目录里
cd /usr/src
tar zxvf /root/linux-2.6.36.tar.bz2
解压后会在/usr/src生成新文件夹linux-2.6.36

第三步:配置
把正在使用中的内核配置文件/usr/src/linux-headers-2.6.32-25-generic/.config 拷到/usr/src/linux-2.6.36目录下
cp /usr/src/linux-headers-2.6.32-22-generic/.config /usr/src/linux-2.6.36
执行:
cd /usr/src/linux-2.6.36
make menuconfig
终端会弹出一个配置界面
注意主菜单最后有两项:load a kernel configuration...
                  save a kernel configuration...
先选第一项load ....,意思是,利用当前的内核配置详单来设置将要编译的内核,然后选save这一项保存,最后退出配置界面。

第四步:开如编译安装新内核
执行:sudo make mrproper   (清除以前曾经编译过的旧文件,如果你是第一次编译,可不执行)
执行:sudo make     (编译,可以加-j4,如果你CPU是双核心,够牛的话,因为可以提高速度)
然后:sudo make install  
再:sudo make modules  (编译模块)
再:sudo make modules_install  (安装模块)
最后创建initrd文件:
mkinitramfs -o /boot/initrd.img-2.6.36

第五步:更新配置GRUB引导列表
sudo gedit /boot/grub/grub.cfg
我的grub.cfg添加如下(注意:这个是自己的grub.cfg里面的内容 直接复制自己原来的稍加改动下就可以):
menuentry 'Ubuntu,Linux 2.6.36' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod ext2
    set root='(hd0,8)'
    search --no-floppy --fs-uuid --set 6af2d2f6-d381-4db8-b171-f449b827ebbf
    linux    /boot/vmlinuz-2.6.36 root=UUID=6af2d2f6-d381-4db8-b171-f449b827ebbf ro   quiet splash
    initrd    /boot/initrd.img-2.6.36
}
#以下是原Linux 2.6.32-25-generic内核启动项
menuentry 'Ubuntu,Linux 2.6.32-25-generic' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod ext2
    set root='(hd0,8)'
    search --no-floppy --fs-uuid --set 6af2d2f6-d381-4db8-b171-f449b827ebbf
    linux    /boot/vmlinuz-2.6.32-25-generic root=UUID=6af2d2f6-d381-4db8-b171-f449b827ebbf ro   quiet splash
    initrd    /boot/initrd.img-2.6.32-25-generic
}

        到此为止,整个内核的编译就全部完成啦。

        不过也许你重启系统时,虽然启动菜单中增加了新内核2.6.34的启动项,但极可能会启动失败,出现以下提示:

warning:can't open directory /lib/modules/2.6.34/modules.dep,no such files or directory

        此时不应气馁,玩LINUX要有敢食螃蟹的勇气和毅力,哈哈。静下心,选择从旧内核启动登录系统,然后执行以下命令(为了避免输入错误,最好复制下面的命令)修改后就能成功启动新内核了。

######################################
sudo su  (保证获得root权限,否则会提示权限不够,不能成功完成任务哦)
cd /boot
cp initrd.img-2.6.36 initrd-2.6.36.old (先做一个备份以防万一,哈哈)
depmod -a
update-initramfs -k 2.6.36 -c
cd /tmp
gzip -dc /boot/initrd.img-2.6.36| cpio -id
touch lib/modules/2.6.36/modules.dep
find ./ | cpio -H newc -o > /boot/initrd.img-2.6.36.new
gzip /boot/initrd.img-2.6.36.new
cd /boot
mv initrd.img-2.6.36.new.gz initrd.img-2.6.36

######################################

 
        完成上述操作后,重启系统,选新内核启动,会弹出一个小英文窗口,先选择grub update grub .......(因为无法截图,记不清了,大概有这些字样)这一项来更新GRUB,然后再选最上面的一项,好象是resum字样的,不知道有没有记错,哈 哈,请细心点吧。完成后重新启动电脑,GRUB菜单会更新成有好多启动项了,就象刚安装完UB10.04时一样,不过你可以登录系统后再修改/boot /grub/grub.cfg来简洁它。到此编译安装工作圆满成功,谢谢各位看官的支持!!!
  评论这张
 
阅读(1470)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017