如何升级centos7 内核方法

关于内核说明:

  版本性质:主分支ml(mainline),稳定版(stable),长期维护lt(longterm)

  版本命名格式:“A.B.C"

    A代表内核版本号

    B代表内核主版本号

    C代表内核次版本号

一、检查内核版本

[[email protected] ~]# uname -r
3.10.0-514.el7.x86_64
[[email protected] ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[[email protected] ~]# 

二、如何升级内核

    这里只关注centos7如何升级

  1、导入elrepo的key然后在安装elrepo的yum源:

rpm -import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org ###key
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm   ###yum源

 

  2、查看可用的内核相关的包

yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
 1 [[email protected] ~]# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
 2 Loaded plugins: fastestmirror, langpacks
 3 elrepo-kernel                                                                                | 2.9 kB  00:00:00
 4 elrepo-kernel/primary_db                                                                     | 1.8 MB  00:00:02
 5 Loading mirror speeds from cached hostfile
 6  * elrepo-kernel: mirrors.tuna.tsinghua.edu.cn
 7 Available Packages
 8 kernel-lt.x86_64                                          4.4.180-2.el7.elrepo                         elrepo-kernel
 9 kernel-lt-devel.x86_64                                    4.4.180-2.el7.elrepo                         elrepo-kernel
10 kernel-lt-doc.noarch                                      4.4.180-2.el7.elrepo                         elrepo-kernel
11 kernel-lt-headers.x86_64                                  4.4.180-2.el7.elrepo                         elrepo-kernel
12 kernel-lt-tools.x86_64                                    4.4.180-2.el7.elrepo                         elrepo-kernel
13 kernel-lt-tools-libs.x86_64                               4.4.180-2.el7.elrepo                         elrepo-kernel
14 kernel-lt-tools-libs-devel.x86_64                         4.4.180-2.el7.elrepo                         elrepo-kernel
15 kernel-ml.x86_64                                          5.1.5-1.el7.elrepo                           elrepo-kernel
16 kernel-ml-devel.x86_64                                    5.1.5-1.el7.elrepo                           elrepo-kernel
17 kernel-ml-doc.noarch                                      5.1.5-1.el7.elrepo                           elrepo-kernel
18 kernel-ml-headers.x86_64                                  5.1.5-1.el7.elrepo                           elrepo-kernel
19 kernel-ml-tools.x86_64                                    5.1.5-1.el7.elrepo                           elrepo-kernel
20 kernel-ml-tools-libs.x86_64                               5.1.5-1.el7.elrepo                           elrepo-kernel
21 kernel-ml-tools-libs-devel.x86_64                         5.1.5-1.el7.elrepo                           elrepo-kernel
22 perf.x86_64                                               5.1.5-1.el7.elrepo                           elrepo-kernel
23 python-perf.x86_64                                        5.1.5-1.el7.elrepo                        

    

  3、安装内核(我这里用最新的吧)以后如何继续升级直接用下面这条命令就可以了

yum -y --enablerepo=elrepo-kernel install kernel-ml.x86_64 kernel-ml-devel.x86_64 

使用新内核启动

# 使用新内核启动:
grub2-set-default 0
reboot

  

---------------------------------------------------------------------------------------------下面的可不用看

三、修改grub中默认的内核版本

  内核升级完成后,还需要调整

  1、查看内核启动顺序

 awk -F\‘ ‘$1=="menuentry " {print $2}‘ /etc/grub2.cfg

  通过此命令可以看到新内核顺序为0

1 [[email protected] ~]# awk -F\‘ ‘$1=="menuentry " {print $2}‘ /etc/grub2.cfg
2 CentOS Linux (5.1.5-1.el7.elrepo.x86_64) 7 (Core)
3 CentOS Linux (3.10.0-514.el7.x86_64) 7 (Core)
4 CentOS Linux (0-rescue-b7671beb75f14e95b5a58975dae3a897) 7 (Core)
5 You have new mail in /var/spool/mail/root
6 [[email protected] ~]# vim /etc/default/g
7 google-chrome  grub           

  2、修改内核启动顺序为0

     vim /etc/default/grub

1 [[email protected] ~]# vim /etc/default/grub
2
3 GRUB_TIMEOUT=5
4 GRUB_DISTRIBUTOR="$(sed ‘s, release .*$,,g‘ /etc/system-release)"
5 GRUB_DEFAULT=0
6 GRUB_DISABLE_SUBMENU=true
7 GRUB_TERMINAL_OUTPUT="console"
8 GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet net.ifnames=0 biosdevname=0 "
9 GRUB_DISABLE_RECOVERY="true"

  

  3、接着用命令来创建内核配置

    grub2-mkconfig -o /boot/grub2/grub.cfg

1 [[email protected] ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
2 Generating grub configuration file ...
3 Found linux image: /boot/vmlinuz-5.1.5-1.el7.elrepo.x86_64
4 Found initrd image: /boot/initramfs-5.1.5-1.el7.elrepo.x86_64.img
5 Found linux image: /boot/vmlinuz-3.10.0-514.el7.x86_64
6 Found initrd image: /boot/initramfs-3.10.0-514.el7.x86_64.img
7 Found linux image: /boot/vmlinuz-0-rescue-b7671beb75f14e95b5a58975dae3a897
8 Found initrd image: /boot/initramfs-0-rescue-b7671beb75f14e95b5a58975dae3a897.img
9 done

   

  4、重启查看变化

      init 6或者reboot

[[email protected] ~]# init 6
[[email protected] ~]# uname -r
5.1.5-1.el7.elrepo.x86_64
[[email protected] ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[[email protected] ~]# 

参考:升级Centos 7/6内核版本到4.12.4的方法,还介绍了无法上网机器的升级方法

转载:https://www.cnblogs.com/zhangxingeng/p/10941781.html

原文地址:https://www.cnblogs.com/chengkanghua/p/12516551.html

时间: 2024-08-29 01:19:19

如何升级centos7 内核方法的相关文章

Centos7升级新内核

由于觉得Centos7内核版本还不够高,就想升级下,下面是升级步骤 我使用的方法是使用yum升级内核 使用第三方仓库升级 CentOS 允许使用 ELRepo,这是一个第三方仓库,可以将内核升级到最新版本. 要在 CentOS 7 上启用 ELRepo 仓库,请运行: # rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org # rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.

Linux入门之CentOS7内核编译三部曲(1)

Linux入门之CentOS7内核编译三部曲(1) 我们知道,一个Linux系统的主要组成是由liunx内核核心和一些支持模块组合而成的.但是在某些场合中,需要某项功能,而当前内核的核心或者模块不支持此功能,那么就需要对内核进行一个升级或者重新编译内核添加相应的功能,以此提供了对此功能的支持. 编译前的准备 认识kernel 所为kernel,就是一种操作系统的核心,当然也是一个文件,而这种核心提供了对一些硬件的支持,一般来说其中包含了一些对常见硬件核心驱动的核心代码.启动系统时会通过加载MBR

Linux入门之CentOS7内核编译三部曲(2)

Linux入门之CentOS7内核编译三部曲(2) 在linux系统中,编译完了内核,得到了所需的功能,并不能表示就已经能完美完成我们的所需.因为内核只是做一个核心的硬件及核心代码的支持,而注意的模块支持任然是对应版本的内核模块文件.这些文件决定着平时能否使用哪些功能.这次不会介绍如果添加给上次编译的新内核模块功能,主要介绍模块的功能和作用以及其加载和卸载. 查看当前系统以及加载的内核模块命令:lsmod  modinfo lsmod 命令 lsmod - program to show the

Linux入门之CentOS7内核编译三部曲(3)

Linux入门之CentOS7内核编译三部曲(3) 在上篇通过一些简单的例子和使用介绍了linux系统中模块的功能和作用.那么每次系统启动完成之后,又是怎么去自动加载所需要的模块,那么回过头来看还是要连续模块加载具体在系统启动中的哪个阶段开始触发的.同时模块的加载是依据内核本身的预定程序,还是linux文件系统中的相应配置文件呢? 默认安装的模块文件路径:/lib/modules/$(uname -r)/kernel,如: #查看内核模块列表目录 [[email protected] ~]# l

ubuntu 删除过期内核方法

ubuntu 的一个让处女座人不舒服的地方就是 每次升级后原来的文件还保留在系统中,不会自动清理,所以对于有洁癖的人来说需要自己清理. 先来看看你的系统中已经存在的内核版本:dpkg --get-selections|grep linux libselinux1                    install linux-firmware                    install linux-generic-pae                install linux-he

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

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

更新centos7内核

centos7内核更新 uname -a #check the current version cat /etc/redhat-release #check current kernel verison rpm -qa | grep kernel #check the current kernel verison that has been installed #查看是否有关于内核的源,elrepo(RPM repository for Enterprise Linux package),其实是

centos升级新内核所遇问题。

今天在centos升级到内核linux.4.4.28的时候没有成功,中途报错大概如下: ***waiting for unfinished jobs...... make:INTERNAL:Exiting with 13 jobserver tokens available: should be 12! 如果出现以上报错是因为没有安装 openssl的原因,需要yum安装下openssl,操作如下: 1. 网络配通后配置好DNS. 2. yum  -y groupinstall "base&qu

docker安装升级linux内核(2.6.32->3.10.81),安装成功!

升级linux内核(2.6.32->3.10.81),安装docker 1.内核升级环境准备 #查看已经安装的和未安装的软件包组,来判断我们是否安装了相应的开发环境和开发库: yum grouplist #一般是安装这两个软件包组,这样做会确定你拥有编译时所需的一切工具 yum groupinstall "Development Tools" #你必须这样才能让 make *config 这个指令正确地执行 yum install ncurses-devel #如果你没有 X 环