CentOS7升级内核

admin2023-07-06  164

查看系统版本:

cat /etc/redhat-release

显示:

CentOS Linux release 7.9.2009 (Core)

 

查看内核版本:

uname -r

显示:

3.10.0-1160.92.1.el7.x86_64

 

有三种安装方式,yum、rpm、源码

 

内核种类:

kernel-ml中的ml是mailine stable 就是最新的版本

kernel-tl中的tl是long term support 缩写,是长期支持的版本 

 

yum安装步骤:

导入签名key,这是elrepo仓库公共秘钥,(3.0以上内核引入签名机制)以及仓库源

 

导入key:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

 

安装最新源:

yum install http://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm

 

查看可安装版本(ml版):

yum --enablerepo="elrepo-kernel" list --showduplicates | sort -r | grep kernel-ml.x86_64

 

查看可安装版本(lt版):

yum --enablerepo="elrepo-kernel" list --showduplicates | sort -r | grep kernel-lt.x86_64

 

安装最新版本(ml版):

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

 

安装最新版本(lt版):

yum --enablerepo=elrepo-kernel install kernel-lt-devel kernel-lt -y

 

查看现有内核启动顺序:

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

 

修改默认启动项:

grub2-set-default 0

从0计数,grub2-set-default 0和/etc/default/grub文件里的GRUB_DEFAULT=0意思一样,看新版本为那个序号一般为0

 

重新生成grub配置文件:

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

 

重启看一下有没有新的内核启动选项。

 

rpm安装步骤:

导入key和源,wget下载安装包到指定目录,一键安装所有rpm -ivh *.rpm ./,然后设置启动顺序,重启即可。

 

源码安装步骤:

安装依赖

yum install -y gcc make git ctags ncurses-devel openssl-devel

yum install -y bison flex elfutils-libelf-devel bc

 

创建目录

mkdir ~/kernelbuild

 

获取源码,在线下载:

wget https://mirror.tuna.tsinghua.edu.cn/kernel/vxxx.tar.xz

 

解压到目录:

tar -xvJf vxxx.tar.xz

 

为确保内核树绝对干净,进入目录后执行:

cd vxxx

make clean && make mrproper

 

复制当前环境的内核配置,亦可以用默认,可以根据实际情况修改:

cp /boot/config-3.10.0-862.el7.x86_64 .config

 

编译内核:

make -j x

如果是4核的机器,x可以是8

 

安装内核,从这里开始要root权限执行命令,否则会失败:

make modeuls_install install

 

设置启动顺序,重启即可。

 

查看现有内核启动顺序:

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

 

修改默认启动项:

grub2-set-default 0

 

 

卸载多余内核

查看系统中全部内核:

rpm -qa | grep kernel

 

删除指定内核:

yum remove -y kernel-3.xxxx

 

删除的依赖再安装

yum --enablerepo=elrepo-kernel -y install kernel-ml-headers

yum install gcc gcc-c++ gcc-gfortran glibc-devel glibc-headers libquadmath-devel libtool systemtap systemtap-devel

 

也可以使用yum-utils工具,如果内核少于三个,不会删除,多于三个会自动删除旧内核

yum install -y yum-utils

package-cleanup –oldkernels

 

卸载完之后不一定要重启。

转载请注明原文地址:http://www.198484.com/?read-118.html
0

最新回复(0)