环境:

  系统硬件: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文件

  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

centos 6.5 升级内核 linux 3.12.17 (笔记 实测)的更多相关文章

  1. centos 6.5 升级内核 linux 3.12.17

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Linux centos 2.6.32-431.el6.x86_64(Centos-6.5-x86_64-mi ...

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

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Linux centos 2.6.32-431.el6.x86_64(Centos-6.5-x86_64-mi ...

  3. CentOS 6.5 升级内核

    Docker需要3.10以上内核支持,Centos6.5 默认内核为2.6.所以手动编译安装3.10内核. 查看当前系统内核版本 [root@gu ~]# uname -r2.6.32-431.el6 ...

  4. CentOS 6.5 升级内核到 3.10.28

    本文适用于CentOS 6.4, CentOS 6.5,亲测可行,估计也适用于其他Linux发行版. 1. 准备工作 1.1 下载源码包 Linux内核版本有两种:稳定版和开发版 ,Linux内核版本 ...

  5. CentOS 7.x升级内核

    第一种针对当前内核版本的小版本升级可以采用如下方法: [root@localhost ~]# uname -r -.el7 [root@localhost ~]# yum list kernel [r ...

  6. 在centos 7下升级内核

      前言 今天读了一篇老外的文章,讲的是如何在linux环境下升级内核.比较暴力,比较简单,故做个记录.   文章中,作者先列出一个常识:linux是内核名,不是系统名.我们平时说的"lin ...

  7. centos 6.5 X64 安装 mongodb 2.6.1 (笔记 实测)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Centos-6.5-x86_64 *** Centos编译安装mongodb 2.6 系统最好是64位的,才 ...

  8. CentOS 6.5 升级内核 kernel

    本文适用于CentOS 6.5, CentOS 6.6,亲测可行,估计也适用于其他Linux发行版. 1. 准备工作 1.1 下载源码包 Linux内核版本有两种:稳定版和开发版 ,Linux内核版本 ...

  9. 【kernel】Centos 云上升级内核失败 如何处理【笔记记录转】

    Centos7选定默认启动的内核版本 vim /etc/grub2.cfg   修改timeout =5   修改成30天 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附 ...

随机推荐

  1. js_跨域

    这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...

  2. Linux中fork()函数详解

    一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程, 也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同 ...

  3. 利用密钥通过ssh互访

    dir(192.168.131.132):作为client rs1(192.168.131.110)和 rs2(192.168.131.131):作为server端     1.dir 运行命令:   ...

  4. mysql 学习官网

    http://www.runoob.com/mysql/mysql-install.html

  5. js方法入参或局部变量和全局变量重名,用来赋值全局变量会失败

    今天遇到个bug,最后终于知道原因了,js方法入参和全局变量重名,用入参赋值全局变量失败,就是说方法入参不能和全局变量重名. 现在下面的例子也说明,局部变量和全局变量不可以同名不光是入参,只要同名赋值 ...

  6. 1.1Axure简介

    1.部件:点击部件右上角的?,可以看到相关注释,注释底部有网站链接,可查看部件的详细介绍.

  7. 【用xocde5打包 在IOS7以下也能显示无默认gloss 效果 图解】

    图解,只需要这几个地方修改以下就好了,看不懂的话,请留言 完毕:记着clean 以下项目文件

  8. 手把手教你玩转nginx负载均衡(三)----配置虚拟服务器网络

    引言 虽然上一篇我们成功的启动了虚拟机,也安装好了操作系统,但是这台虚拟机和主机以及其他虚拟机是没有办法连通的,我们的目标是配置多台服务器并且配置nginx反向代理,来实现负载均衡,所以不能访问内网是 ...

  9. plsql查找不到带中文的纪录

    今天在另外的电脑用plsql查询不到带中文的记录 select * from test where name like '%测试%' 然后发现是系统的环境变量还没设置好所造成的.在系统变量加入如下变量 ...

  10. 《Python操作SQLite3数据库》快速上手教程

    为什么使用SQLite数据库? 对于非常简单的应用而言,使用文件作为持久化存储通常就足够了,但是大多数复杂的数据驱动的应用需要全功能的关系型数据库.SQLite的目标则是介于两者之间的中小系统.它有以 ...