一、手动档

手动档就是从源码开始编译内核安装,好处是可以自己选择任意版本的内核,缺点就是耗时长,编译安装消耗系统资源

1.1、获取 kernel 源码

这世界上最伟大的 Linux 内核源码下载地址是 kernel 官网,选择一个稳定版本下载即可


1.2、解压并清理

官方要求将其解压到 /usr/src 目录,其实在哪都可以,为了规范一点索性也解压到此位置,然后为了防止编译残留先做一次清理动作

# 下载内核源码
wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.8.6.tar.xz
# 解压并移动到 /usr/src
tar -Jxvf linux-4.8.6.tar.xz
mv linux-4.8.6 /usr/src/kernels
# 执行清理(没 gcc 的要装一下)
cd /usr/src/kernels/linux-4.8.6
make mrproper && make clean
1.3、生成编译配置表

kernel 在编译时需要一个配置文件(.config),用于描述开启哪些特性等,该文件一般可通过一下四种途径获得:

  • 复制当前系统编译配置表,即 cp /boot/config-xxx .config;如果系统有多个内核,那么根据版本号选择最新的即可

  • 使用 make defconfig 命令获取当前系统编译配置表,该命令会自动写入到 .config 中
  • 使用 make localmodconfig 命令开启交互模式,然后根据提示生成编译配置表
  • 使用 make oldconfig 命令根据旧的编译配置表生成新的编译配置表,刚方式会直接读取旧的便已配置表,并在以前没有设定过的配置时会自动开启交互模式

这里采用最后一种方式生成

1.4、编译并安装

内核配置表生成完成后便可进行编译和安装(需要安装 bc、openssl-devel等)

make
make modules
make modules_install
make install

最后执行重启验证即可,验证成功后可删除旧的内核(rpm -qa | grep kernel)

二、自动档

相对于手动档编译安装,CentOS 还可以通过使用 elrepo 源的方式直接安装最新稳定版 kernel,脚本如下

# import key
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# install elrepo repo
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
# install kernel
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
# modify grub
grub2-set-default 0
# reboot
reboot

cent7内核升级4.9的更多相关文章

  1. linux 内核升级

    LINUX 内核升级 linux 内核官网 https://www.kernel.org/ POST BIOS(boot sequence) 所选择的启动设备次序的MBR中是否有引导程序, ----& ...

  2. linux内核升级图文攻略(转)

    一.Linux内核概览Linux是一个一体化内核(monolithic kernel)系统.设备驱动程序可以完全访问硬件.Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置 ...

  3. CentOS内核升级

    CentOS 6.5自动内核升级的主要步骤: 1)内核文件下载到/usr/src/kernel/目录下: 如:2.6.32-431.5.1.el6.x86_64编译后差不多有48M大小: 2)生成的引 ...

  4. Centos5.5内核升级

    当前版本linux-2.6.18-194.el5PAE目标版本linux-2.6.35.9内核升级步骤: 1.查看当前内核版本 uname –a¥ Linux localhost.localdomai ...

  5. Redhat Linux内核升级全记录(转)

        http://www.sina.com.cn 2001/06/15 15:38 中国电脑教育报 李红   Redhat Linux因为比较容易上手,所以用户很多.它系统配置完善,预装了丰富的应 ...

  6. linux内核升级图文攻略

    Linux内核概览 Linux是一个一体化内核(monolithic kernel)系统. 设备驱动程序可以完全访问硬件. Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设 ...

  7. centos7内核升级及curl访问https证书过期处理

    centos7内核升级及curl访问https证书过期处理 先看下当前系统的linux内核版本 uname -r 3.10.0-229.el7.x86_64 升级步骤 1.rpm --import h ...

  8. Linux Centos 7.4 内核升级

    Linux Centos 7.4 内核升级 原始内核版本:3.10.0-693.2.2.el7.x86_64 升级内核版本:4.14.9-1.el7.elrepo.x86_64 1.导入key Key ...

  9. linux 内核升级2 转

    linux内核升级 一.Linux内核概览 Linux是一个一体化内核(monolithic kernel)系统. 设备驱动程序可以完全访问硬件. Linux内的设备驱动程序可以方便地以模块化(mod ...

随机推荐

  1. 关闭Win10自带的 Windows Defender

    1.按下Win+R,输入gpedit.msc 2.进入组策略,选择计算机配置>管理模板>Windows 组件>Windows Defender 3.双击"关闭 Window ...

  2. GOOGLE地图坐标拾取方法、GOOGLE地图获取坐标方法

    方法一: 打开google地图-->查找目的地-->右键:此位置居中--> 打开IE浏览器(百度浏览器.GOOGLE浏览器.360浏览器均不行,只能在IE中获取),在IE浏览器的地址 ...

  3. android:digits属性

    android:digits属性限定输入的字符 可以用于密码输入等输入框 ex: 个人意见: 但是这样的话不符合要求的字符直接输入不上去,可能会给用户造成困惑,最好给出提示或用其他工具. 本文欢迎转载 ...

  4. 使用javascript实现贪吃蛇游戏

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  5. CMakeLists for tesseract

    在网上找了很多,直接用都不行,试了半天的到以下的结果. cmake_minimum_required(VERSION 2.8) project( test ) include_directories ...

  6. java 集合知识整理

    java集合类图 HashMap和Hashtable的区别   HashMap HashTable  继承方式 extends AbstractMap implements Map extends D ...

  7. php namespace用法

    其实纠结了很久要不要使用这个东西,但是看看了最新的框架laravel,cakephp等等的新版本都使用上了,所以还是随大流顺便学习下. namespace和c++里面的概念差不多,只是用法有点差别. ...

  8. Charles

    1. charles使用教程指南+客户端弱网测试:http://blog.csdn.net/anualday/article/details/51423457 2.使用Charles对Https请求进 ...

  9. window service 注册、启动、删除

    sc命令 sc actionName serviceName sc start serviceName sc stop serviceName sc delete serviceName : 删除注册 ...

  10. Sql日期时间格式转换

    sql server2000中使用convert来取得datetime数据类型样式(全) 日期数据格式的处理,两个示例: CONVERT(varchar(16), 时间一, 20) 结果:2007-0 ...