Chinaunix首页 | 论坛 | 博客
  • 博客访问: 41856
  • 博文数量: 10
  • 博客积分: 271
  • 博客等级: 二等列兵
  • 技术积分: 150
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-10 13:18
文章分类

全部博文(10)

文章存档

2012年(2)

2011年(8)

我的朋友

分类: LINUX

2011-04-21 17:23:32

                 为什么要升级内核
  linux内核承担着系统最核心的任务,是其它程序和硬件等运行过程中的仲裁者:它要管理所有进程的内存,保证它们都能平等得到处理器的时隙。此外,它还提供程序和硬件之间的接口等功能。
  通常,更新内核是因为特殊需要或者其他要求,一般来说升级内核后的系统能支持更多的硬件,具备更好的进程管理能力,运行速度更快、更稳定,并且一般会修复老版本中发现的许多漏洞等,经常性地选择升级更新的系统内核是Linux使用者的必要操作内容。
  一般,内核的版本序列号使用三个数字表示,如2.2.14,版本号越高表示功能越强。版本号分为两个系列:一种是产品系列,以偶数命名,例如,1.2.x、2.0.x、2.2.x等,运行稳定,已经经过较为周密的测试;另外一种是开发测试系列,以奇数命名,用以进行最新功能的测试,不建议初学者和生产过程中使用。
  升级前得准备:
查看当前系统的内核信息                       
  升级内核所需的环境:
在进行内核升级或定制内核时,Linux系统需要事先安装GCC编译工具、ID连接器和make编译器

gcc-gfortran-4.1.2-44.el5

gcc-c++-4.1.2-44.el5

gcc-objc-4.1.2-44.el5

gcc-gnat-4.1.2-44.el5

gcc-java-4.1.2-44.el5

libgcc-4.1.2-44.el5

gcc-4.1.2-44.el5

gcc-objc++-4.1.2-44.el5

binutils-2.17.50.0.6-9.el5

make-3.81-3.el5

binutils-devel-2.17.50.0.6-9.el5

binutils-2.17.50.0.6-9.el5

control-center-2.16.0-16.el5

control-center-devel-2.16.0-16.el5

libstdc++-devel-4.1.2-44.el5

glibc-common-2.5-34

glibc-devel-2.5-34

glibc-headers-2.5-34

glibc-utils-2.5-34

make-3.81-3.el5

ncurses-devel-5.5-24.20060715

dialog-1.0.20051107-1.2.2

下载最新的内核:linux-2.6.38.tar

内核的编译安装

 # tar -zxf linux-2.6.38.tar.gz -C /usr/src/      //解压到该目录/usr/src/

 # cd /usr/src/linux-2.6.38/   #进入目录

# make mrproper     //去除内核的依赖关系以及编译后的垃圾信息

 # make menuconfig   //进入菜单方式界面配置内核

 通过界面可以清楚看到按上下键选择指定菜单,通过回车键可以进入带有箭头→的下一级子目录,通过Y键可将选项编译到内核,按N键将不选择选项,即既不把选项编译到内核也不编译成模块,M键可将选项编译成模块,按两次Esc键可退出到上一级,按?键可查看指定选项的帮助文档,按/键可搜索指定选项的位置以及路径,如下:                        

需要勾选上General Setup下面的 “enable deprecated sysfs features to support old userspace tools”,不然编译安装之后会找不到原来的挂载点。

# make;make modules;make modules_install;make install   //分别是编译内核、编译模块、安装模块、安装内核,注意是在linux-2.6.36/这目录下编译

修改引导启动管理器的配置文件 /boot/grub/grub.conf 

default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.38)
        root (hd0,0)
        kernel /vmlinuz-2.6.38 ro root=LABEL=/ rhgb quiet
        initrd /initrd-2.6.38.img
title CentOS (2.6.18-194.el5)
        root (hd0,0)
        kernel /vmlinuz-2.6.18-194.el5 ro root=LABEL=/ rhgb quiet
        initrd /initrd-2.6.18-194.el5.img
其实不需要进行修改,内核升级好之后会自动在grub.conf文件中加入上门红色的配置。重启电脑就可以选择需要启动的内核,如果不需要旧的内核可以在grub.conf配置文件中将旧内核的参数注释掉即可。

阅读(2090) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~