169it -->


 
当前位置:  操作系统>redhat/centos

CentOS 6.5 下载地址及如何升级内核(kernel)版本到 3.10.28

 
分享到:
    发布时间:2014-4-8  


     CentOS 6.5 正式版发布了,该版本基于 RHEL 6.5CentOS 6.5 下载地址:CentOS-6.5-x86_64-bin-DVD1.iso (4,261MB, torrent),CentOS-6.5-x86_64-LiveDVD.iso (1,788MB, torrent), CentOS-6.5-x86_64-LiveCD.iso (649MB, torrent). 老版本CentOs如何升级到CentOS 6.5 &nb...

   CentOS 6.5 正式版发布了,该版本基于 RHEL 6.5

CentOS 6.5 下载地址:

CentOS-6.5-x86_64-bin-DVD1.iso (4,261MB, torrent),

CentOS-6.5-x86_64-LiveDVD.iso (1,788MB, torrent),

CentOS-6.5-x86_64-LiveCD.iso (649MB, torrent).


   老版本CentOs如何升级到CentOS 6.5

   在root用户下运行如下命令即可:

    yum clean all && yum update


  CentOS 6.5 如何升级内核(kernel)版本到 3.10.28


1. 准备工作

1.1 下载CentOS 6.5 源码包

Linux内核版本有两种:稳定版和开发版 ,Linux内核版本号由3个数字组成:r.x.y

r: 主版本号

x: 次版本号,偶数表示稳定版本;奇数表示开发中版本。

y: 修订版本号 , 表示修改的次数

去 http://www.kernel.org 首页,可以看到有stable, longterm等版本,longterm是比stable更稳定的版本,会长时间更新,因此我选择 3.10.28,

wget  https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.10.28.tar.xz

1.2 解压

tar -xf linux-3.10.28.tar.xz

1.3 更新当前系统

sudo yum update

sudo yum upgrade

1.4 安装编译内核所需要的软件包

sudo yum groupinstall "Development Tools" # 一口气安装编译时所需的一切工具

sudo yum install ncurses-devel #必须这样才能让 make *config 这个指令正确地执行。

sudo yum install qt-devel #如果你没有 X 环境,这一条可以不用

sudo yum install hmaccalc zlib-devel binutils-devel elfutils-libelf-devel #创建 CentOS-6 内核时需要它们

2 配置文件

2.1 查看当前系统内核

uname -r

2.6.32-358.11.1.el6.x86_64

2.2 将当前系统的配置文件拷贝到当前目录


cp /boot/config-2.6.32-358.11.1.el6.x86_64 .config

2.3 使用旧内核配置,并自动接受每个新增选项的默认设置


sh -c 'yes "" | make oldconfig'

make oldconfig会读取当前目录下的.config文件,在.config文件里没有找到的选项则提示用户填写,然后备份.config文件为.config.old,并生成新的.config文件,参考 http://stackoverflow.com/questions/4178526/what-does-make-oldconfig-do-exactly-linux-kernel-makefile


3 编译

sudo make -j8 bzImage #生成内核文件

sudo make -j8 modules #编译模块

sudo make -j8 modules_install #编译安装模块

要严格按照这个顺序进行编译,不能合并成一句,sudo make -j8 bzImage modules modules_install。


-j后面的数字是线程数,用于加快编译速度,一般的经验是,有多少G内存,就填写那个数字,例如有8G内存,则为-j8。


4 安装

sudo make install

如果出现了 ERROR: modinfo: could not find module xxx,数量少的话,可以忽略。


5 修改Grub引导顺序

安装完成后,需要修改Grub引导顺序,让新安装的内核作为默认内核。


编辑 grub.conf文件,


sudo vim /etc/grub.conf

数一下刚刚新安装的内核在哪个位置,从0开始,然后设置default为那个数字,一般新安装的内核在第一个位置,所以设置default=0。


6 重启

sudo reboot

重启后,看一下当前CentOS 6.5 内核版本号,

uname -r

3.10.28

成功啦!!


7 如果失败,则重新循环

如果失败,重新开始的话,要清理上次编译的现场


make mrproper #清理上次编译的现场

然后转到第2步,重新开始。


   使用yum快速升级CentOS 6.5内核到 3.10.28

在yum的ELRepo源中,有mainline(3.13.1)、long-term(3.10.28)这2个内核版本,考虑到long-term更稳定,会长期更新,所以选择这个版本。

1、导入public key

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

2、安装ELRepo到CentOS-6.5中

rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm

3、安装kernel-lt(lt=long-term)

yum --enablerepo=elrepo-kernel install kernel-lt -y

或者安装kernel-ml(ml=mainline)

yum --enablerepo=elrepo-kernel install kernel-ml -y

4、编辑grub.conf文件,修改Grub引导顺序

vim /etc/grub.conf

# grub.conf generated by anaconda

#

# Note that you do not have to rerun grub after making changes to this file

# NOTICE:  You do not have a /boot partition.  This means that

#          all kernel and initrd paths are relative to /, eg.

#          root (hd0,0)

#          kernel /boot/vmlinuz-version ro root=/dev/sda1

#          initrd /boot/initrd-[generic-]version.img

#boot=/dev/sda

default=0

timeout=5

splashimage=(hd0,0)/boot/grub/splash.xpm.gz

hiddenmenu

title CentOS (3.10.28-1.el6.elrepo.x86_64)

       root (hd0,0)

       kernel /boot/vmlinuz-3.10.28-1.el6.elrepo.x86_64 ro root=UUID=0a05411f-16f2-4d69-beb0-2db4cefd3613 rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=en_US.UTF-8

rd_NO_LVM rd_NO_DM rhgb quiet

       initrd /boot/initramfs-3.10.28-1.el6.elrepo.x86_64.img

title CentOS (2.6.32-431.3.1.el6.x86_64)

       root (hd0,0)

       kernel /boot/vmlinuz-2.6.32-431.3.1.el6.x86_64 ro root=UUID=0a05411f-16f2-4d69-beb0-2db4cefd3613 rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=en_US.UTF-8 r

d_NO_LVM rd_NO_DM rhgb quiet

       initrd /boot/initramfs-2.6.32-431.3.1.el6.x86_64.img

title CentOS (2.6.32-431.el6.x86_64)

       root (hd0,0)

       kernel /boot/vmlinuz-2.6.32-431.el6.x86_64 ro root=UUID=0a05411f-16f2-4d69-beb0-2db4cefd3613 rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO

_LVM rd_NO_DM rhgb quiet

       initrd /boot/initramfs-2.6.32-431.el6.x86_64.img

确认刚安装好的内核在哪个位置,然后设置default值(从0开始),一般新安装的内核在第一个位置,所以设置default=0。

5、重启,查看CentOS 6.5 内核版本号

[root@dev ~]# uname -r

3.10.28-1.el6.elrepo.x86_64


本类别最新文章推荐:


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2015,169IT.COM,站长邮箱:www_169it_com#163.com(请将#改为@)

浙ICP备11055608号


-->