CentOS6.5内核升级到linux 3.12.17教程

时间:2022-01-26 17:32:53

 

环境:

  系统硬件:vmware vsphere (CPU:2*4核,内存2G)

  系统版本:Linux centos 2.6.32-431.el6.x86_64(Centos-6.5-x86_64-minimal.iso )

  升级内核版本:longterm:3.12.17

 

升级步骤:

  1.虚拟系统安装

  要求mininal方式安装(205个包),具体步骤省略。

  

  2.查看原有系统内核版本,升级更新包

  2.1更新包

  [root@centos ~]# yum update

  [root@centos ~]# yum upgrade 

 

  2.2查看系统内核版本

  [root@centos ~]# uname -a

  Linux centos 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

  [root@centos ~]# cat /etc/redhat-release
  CentOS release 6.5 (Final)

 

  3.下载、安装需编译环境所需要的工具包

  [root@centos ~]# yum install vim wget
  [root@centos ~]# yum install gcc gcc-c++ xz
  [root@centos ~]# yum install bc
  [root@centos ~]# yum install ncurses-devel
  [root@centos ~]# yum install hmaccalc zlib-devel binutils-devel elfutils-libelf-devel

  [root@centos ~]# yum install qt-devel #如果有X环境时安装(目前不安装)
  
  4.下载内核包

  4.1进行目录
  [root@centos ~]# cd /usr/local/src/

  4.2下载内核包,目前是3.12.17版本。
  [root@centos ~]# wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.12.17.tar.xz

  
  5.编译内核

  5.1解包,进行内核源码目录
  [root@centos ~]# tar -vxf linux-3.12.17.tar.xz
  [root@centos ~]# cd linux-3.12.17

  ***/usr/local/src/linux-3.12.17此目录当编译目录,编译过程,操作都必须在此目录

 

  5.2以菜单的方式,选择编译内核需要的模块
  [root@centos ~]# make menuconfig

  打开菜单后,以默认方式保存<Save>,并退出<Exit>

  保存后,当前目录会自动生成.config文件

 

 

        执行完make menuconfig后,修改/usr/src/linux-2.6.35.4/.config
        将#CONFIG_SYSFS_DEPRECATED_V2 is not set
        默认被注释掉的,将其改为y。即修改为CONFIG_SYSFS_DEPRECATED_V2=y

 

 

 

  5.3查看当前版本,并且以原编译配置来进行编译

  [root@centos ~]# uname -r
  2.6.32-431.el6.x86_64
   

  5.4 复制原配置文件到编译目录(视需要,把旧的配合文件做为新的配合模板)

  [root@centos ~]# cp /boot/config-2.6.32-431.11.2.el6.x86_64 .config

  提示是否覆盖,输入Y
  [root@centos ~]# sudo sh -c 'yes "" | make oldconfig'

  以原配置文件产生新的配置文件,默认回答为YES方式

  

  5.5 编译内核 (需时约30-40分钟)
  [root@centos ~]# make

  

  5.6安装内核

  [root@centos ~]# make modules_install install

  完成时,会提示 could not find module vmware_balloon,这个和虚拟机有关(不理它)


  6. 更改系统启动时,使用的内核
  [root@centos ~]# vim /boot/grub/menu.lst

  修改default=0,开机后,默认以第一项启动(3.12.17内核)

  保存退出
 

 

  7.重启系统
  [root@centos ~]# shutdown -r now

 

  8.确认当前内核版本
  [root@centos ~]# uname -r

  Linux centos 3.12.17 #1 SMP Fri Apr 11 03:32:42 CST 2014 x86_64 x86_64 x86_64 GNU/Linux

  显示内核为3.12.17,表示升级内核成功

 

  9.如果编译失败,可以先清除,再重新编译
  [root@centos ~]# cd /usr/local/src/linux-3.12.17
  [root@centos ~]# make mrproper         #完成或者安装过程出错,可以清理上次编译的现场
  [root@centos ~]# make clean

  10.如果升级成功后,可以删除源码目录
  [root@centos ~]# rm -rf /usr/local/src/linux-3.12.17
 

  11.删除原来的内核 

  11.1查看当前有什么内核版本

  [root@centos ~]# rpm -q kernel

  显示以下版本

  kernel-2.6.32-431.el6.x86_64
  kernel-2.6.32-431.11.2.el6.x86_64

  11.2删除原内核

  [root@centos ~]# yum remove kernel-2.6.32-431.el6.x86_64 #移除此版本的内核,同时启动菜单也不再会出现此内核
  [root@centos ~]# yum remove kernel-2.6.32-431.11.2.el6.x86_64

  删除后,查看启动菜单会发现已经少了此内核

  [root@centos ~]# cat /boot/grub/menu.lst