Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > Linux > 转:Gentoo的内核升级
【标  题】:转:Gentoo的内核升级
【关键字】:Gentoo
【来  源】:http://www.cublog.cn/u/10935/showart.php?id=225377

转:Gentoo的内核升级

Your Ad Here 在Gentoo中,只有内核的升级与众不同,也稍微麻烦一些。其他的包你只需要

代码:
emerge some-pakage


就可以安装好,内核emerge只emerge到内核源代码,要想升级内核,还要编译、拷贝到适当的地方,正确设置boot loader才算完成。下面以gentoo-dev-sources内核为例,说明Gentoo中内核升级的步骤。

准备工作:

代码:
emerge genkernel

这个工具可以简化编译过程而不失灵活性。

1. 检查是否有更新的内核版本。如果你曾经
代码:
emerge gentoo-dev-sources

或其他某种内核,emerge -u world时会自动取回该种内核的新版本的源代码。如果你没有注意观察emerge -u world时的屏幕显示,没关系,查看/usr/src就可以发现
代码:
ls /usr/src


假定你当前的内核版本是2.6.5-r1, 在/usr/src中发现2.6.7-r5, 显然有新内核了。下面以从linux-2.6.5-gentoo-r1升级到linux-2.6.7-gentoo-r5为例介绍

2. 修改linux符号链接,指向/usr/src/

代码:
rm linux
ln -sf /usr/src/linux-2.6.7-gentoo-r5 linux


3. 备份.config文件。原来的.config有没有备份?如果有,使用他会省去一些工作量。假定我们曾经成功的编译安装过2.6.5-r1的内核,那么该.config文件大体可用。备份成功的.config是个好习惯,如果没有做,现在补上这一步。

代码:
mkdir ~/kernel-config ~/kernel-config/2.6.5
cp /usr/src/linux-2.6.5-gentoo-r1/.config ~/kernel-config/2.6.5


4. 使用genkernel 编译内核
代码:
genkernel --kernel-config=/root/kernel-config/2.6.5/.config --menuconfig all


注意,我的经验是genkernel只认得出绝对路径,所以上面--kernel-config的路径一定要是从/开始的全名。

在2.6.7中有一些新的内核选项,genkernel在运行make oldconfig是会提示你,基本上你可以一路回车接受默认值。 然后genkernel会运行make menuconfig(这是我们在命令行中要求的,如果你肯定自己不想修改任何内核设置,当然在上面的命令中可以去掉--menuconfig)。进行适当的设置。一次不要改动太多选项。尤其要注意处理器类型,如果没有设到最优,自己编译内核就太没意义了。

menuconfig完后,你就可以去喝杯茶,上上网什么的。编译时间取决于你的处理器速度,一般半小时可以完成。编译完后genkerl会自动把kernel和initrd复制到/boot, 因为有版本号,你以前的kernel不会被覆盖。如果你是第二次编译这一版本的内核,以前的同一版本的确实会被覆盖。新内核总是有风险的,所以如果你正在运行2.6.7-r5而且这是你机上唯一可用的内核,一定要先把他们重新命名,并相应修改你的boot loader 配置文件。

5. 配置boot loader, 测试新内核。
以 Grub为例,把原来2.6.5-r1的部分完整地复制下来,把新复制出来部分中所有的2.6.5-r1改为2.6.7-r3,保存。然后就可以重新引导到新内核进行测试了。

6. 部分包可能需要重新emerge。当然,数量非常之少。因为我用的是nvidia的显卡,可以在步骤5的时候

代码:
emerge nvidia-kernel nvidia-glx


也可以在引导到新内核后在做这一步。

代码:
emerge nvidia-kernel nvidia-glx
modules-update
kdm(或 gdm)


7. 新内核稳定运行几天后,就可以考虑清除老内核的残余了。

代码:
mount /boot #不一定需要,看你的情况
cd /boot
rm kernel-2.6.5-gentoo-r1 initrd-2.6.5-gentoo-r1
rm -r /usr/src/linux-2.6.5-gentoo-r1


后注: 说到nvidia的显卡,2.6.6以后的内核必须使用目前还不稳定的5xxx驱动程序,所以可以

代码:
mkdir /etc/portage #如果已经有了就不必了
echo media-video/nvidia-glx ~x86 >> /etc/portage/package.keywords
echo media-video/nvidia-kernel ~x86 >>/etc/portage/package.keywords
emerge nvidia-kernel nvidia-glx



debian的distributions:【上一篇】
ELF Section Header 分析:【下一篇】
【相关文章】
  • gentoo下给fvwm打patch
  • gentoo比较快的源
  • 今天gentoo遇到的几个问题
  • Gentoo install guide
  • Gentoo(2005) Installation
  • Gentoo Grub Error Collection
  • 在gentoo linux下使用蓝牙手机
  • 遭遇gentoo的循环依赖(circular dependencies)问题
  • Gentoo的前世今生
  • gentoo网络配置
  • 【随机文章】
  • 部分网页打开显示空白的原因
  • 我不上学了已经是注定
  • perl程序——获得ftp文件列表
  • 解析C语言中的sizeof
  • Fedora Core 4技巧与窍门
  • 关于XGL
  • 新版CCNP 学习指南介绍(转载自中国IT认证实验室)
  •  jsp计数器代码
  • POOM(Pocket Outlook Object Model)开发介绍及应用
  • 无线LAN移动接入网
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.