1.内核升级环境准备

#查看已经安装的和未安装的软件包组,来判断我们是否安装了相应的开发环境和开发库;
yum grouplist
#一般是安装这两个软件包组,这样做会确定你拥有编译时所需的一切工具
yum groupinstall "Development Tools"
#你必须这样才能让 make *config 这个指令正确地执行
yum install ncurses-devel
#如果你没有 X 环境,这一条可以不用
yum install qt-devel
#创建 CentOS-6 内核时需要它们
yum install hmaccalc zlib-devel binutils-devel elfutils-libelf-devel

下载 内核包

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

解包,进行内核源码目录
  [root@centos ~]# tar -vxf linux-3.12.17.tar.xz
  
2.开始升级内核:

cd /usr/src/linux-3.12.17
 #复制原内核配置
 cp /boot/config-2.6.32-573.el6.x86_64 .config
 vim .config
 /*将如下内容 追加入.config 并保存
    CONFIG_NF_NAT_IPV4=y
    CONFIG_IP_NF_TARGET_MASQUERADE=y
    CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
    CONFIG_MEMCG_SWAP=y
    CONFIG_MEMCG_SWAP_ENABLED=y
    CONFIG_AUFS_FS=y
    CONFIG_DM_THIN_PROVISIONING=y
    CONFIG_OVERLAY_FS=y
    CONFIG_CGROUP_PERF=y
    CONFIG_CFS_BANDWIDTH=y
    HYPERVISOR_GUEST=y
    CONFIG_VMWARE_BALLOON=m
 */
 #编辑内核配置,开启内核CGROUP支持
 make menuconfig
 #选择General setup-->Control Group support->Memory Resource Controller for Control Groups选中
 #自动整理.config
 sh -c 'yes "" | make oldconfig'
 #编译并安装内核(j8代表8个线程同时编译,请根据你的机器情况设置)
 make -j8 bzImage && make -j8 modules && make -j8 modules_install && make install
 vim /etc/grub.conf
 修改default=0保存。即选择从你新编译的内核启动linux。
 #重启
 reboot

#注意:重新编译内核请运行
 cd /usr/src/linux-3.12.17
 make mrproper
 make clean

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

#.删除原来的内核 

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

[root@centos ~]# rpm -q kernel

显示以下版本

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

#删除原内核

[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

安装docker

1. yum install docker-engine

2.service docker start

如果启动失败 报如下错误

Starting cgconfig service: Error: cannot mount cpuacct to /cgroup/cpuacct: Device or resource busy
/sbin/cgconfigparser; error loading /etc/cgconfig.conf: Cgroup mounting failed
Failed to parse /etc/cgconfig.conf or /etc/cgconfig.d      [失败]
Starting docker:                                       [确定]

检查cgconfig 是否启动
/etc/init.d/cgconfig status

未启动时

修改vim /etc/cgconfig.conf(注释掉memory)
#    memory    = /cgroup/memory
重启  /etc/init.d/cgconfig restart

重新启动docker

docker安装升级linux内核(2.6.32->3.12.17)的更多相关文章

  1. docker安装升级linux内核(2.6.32->3.10.81)

    .内核升级环境准备 #查看已经安装的和未安装的软件包组,来判断我们是否安装了相应的开发环境和开发库: yum grouplist #一般是安装这两个软件包组,这样做会确定你拥有编译时所需的一切工具 y ...

  2. centos6.5升级Linux内核步骤

    centos6.5升级Linux内核步骤 http://www.jianshu.com/p/c75f00182b4c 使用的操作系统是是centos6.5,按照官方的推荐的配置,把linux内核升级到 ...

  3. CentOS 7.4升级Linux内核

    CentOS 7.4升级Linux内核 [日期:2018-01-15] 来源:Linux社区  作者:straycats [字体:大 中 小] 由于最近intel出了Meltdown和Spectre两 ...

  4. 管理员技术(三): 配置静态网络地址、 使用yum软件源 、 升级Linux内核、查找并处理文件、查找并提取文件内容

    一. 配置静态网络地址 目标: 本例要求为虚拟机 server 配置以下静态地址参数: 1> 主机名:server0.example.com    2> IP地址:172.25.0.11  ...

  5. 升级linux内核(2.6.32->3.10.81),安装docker

    1.内核升级环境准备 #查看已经安装的和未安装的软件包组,来判断我们是否安装了相应的开发环境和开发库: yum grouplist #一般是安装这两个软件包组,这样做会确定你拥有编译时所需的一切工具 ...

  6. centos 升级linux内核

    =============================================== 2018/1/14_第1次修改                       ccb_warlock == ...

  7. 升级 Linux 内核版本(编译源代码)

    升级内核版本(自己编译源码) 从 linux 官网 https://www.kernel.org/ 下载内核源码 解压 tar -xvf linux-4.16.8.tar.xz cd linux-4. ...

  8. 升级Linux内核导致vmware无法使用(vmnet模块无法编译)解决方式

    近期将ubuntu升级到了14.04,出现了vmware无法启动的情况. 详细表现为:每次启动的时候都会弹出一个VMWare Kernel Module Updater的对话框,要求依据当前内核版本号 ...

  9. docker安装总结 linux红帽系列

    由于Docker限制分为两个版本CE和EE,所以之前yum里面的docker是老版本,需要先进行卸载,现在的包名叫做docker-ce yum remove docker docker-common ...

随机推荐

  1. <meta>标签的作用

    <META> 是放于 <HEAD> 与 </HEAD>之间的标记,功用与变化等对,所以我公式化地介绍. <meta name="Descriptio ...

  2. 如何保存PDF、Word和Excel文件到数据库中

    在项目中,有时候我们很需要把PDF.Word和Excel文档等等上传到数据库,以便日后使用.今天这篇文章向大家讲解如何将这些文件保存到数据库的. 详细步骤 第一步:打开数据库,单击新建查询,创建一个名 ...

  3. php 写商城网站的总结吧

    ---恢复内容开始--- 在兄弟连培训,这半个月在做一期项目,期间学到了很多东西,可是还有好多没有学会灵活运用.今天在登录界面加入验证码的时候,form提交不过去input里面的验证码,session ...

  4. DOM节点删除之empty和remove

    DOM节点删除之empty和remove 刚学了新知识,虽然是一个小知识点,但还是忍不住想和大家分享. .empty()是指对该节点后代的删除,结果是清空该节点(该节点里面已无元素). .remove ...

  5. java编程思想笔记(一)——面向对象导论

    1.1 抽象过程 1.所有编程语言都提供抽象编程机制. 2.人们所能够解决的问题的复杂性直接取决于抽象的类型(所抽象的是什么)和质量. 3."命令式"语言(basic,c等)都是对 ...

  6. 【USACO】接住苹果

    接住苹果奶牛喜欢吃苹果.约翰有两棵苹果树,有 N 只苹果会从树上陆续落下.如果掉苹果的时候,贝西在那棵树下,她就能接住苹果.贝西一开始在第一棵树下.在苹果掉落之前,她有足够的时间来回走动,但她很懒,最 ...

  7. java 异常的捕获及处理

    在没有异常处理的程序中如果要回避异常,需要使用大量的判断语句,配合所想到的错误状况来捕捉程序中可能发生的错误.但是这样势必会导致程序运行效率降低.java异常处理机制具有易于使用,可自定义异常类,处理 ...

  8. JTree单击事件

    import javax.swing.*; import javax.swing.tree.*; import java.awt.FlowLayout; import java.awt.GridLay ...

  9. Unity3DGUI:常用控件

  10. Python 实现类似PHP的strip_tags函数功能,并且可以自定义设置保留标签

    最近在研究 Python ,发现用的还是很不习惯,很多PHP里面很简单的功能在Python 里面都得找半天,而且很多功能都得自己实现. 今天做个采集,需要过滤内容中的标签,搞了一下午,貌似终于搞出来了 ...