CentOs7 升级/更新内核
# CentOs7 升级/更新内核
# 内核定义
See More
关于内核版本的定义:
版本性质:主分支ml(mainline),稳定版(stable),长期维护版lt(longterm)
版本命名格式为 “A.B.C”:
数字 A 是内核版本号:版本号只有在代码和内核的概念有重大改变的时候才会改变,历史上有两次变化: 数字 B 是内核主版本号:主版本号根据传统的奇-偶系统版本编号来分配:奇数为开发版,偶数为稳定版 数字 C 是内核次版本号:次版本号是无论在内核增加安全补丁、修复bug、实现新的特性或者驱动时都会改变
# 升级内核
1、查看当前内核
uname -r
# 3.10.0-514.el7.x86_64
2、升级内核
# 升级内核需要先导入elrepo的key,然后安装elrepo的yum源:
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install -y https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
# 如果要安装ml内核,使用如下命令:
yum --enablerepo=elrepo-kernel -y install kernel-ml-devel kernel-ml
# 如果要安装lt内核,使用如下命令:
yum --enablerepo=elrepo-kernel -y install kernel-lt-devel kernel-lt
3、设置默认内核
grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
4、删除旧的内核
# 查看已安装的内核
rpm -qa | grep kernel
# 删除旧内核
yum remove 内核名称
5、安装新版本工具包(可选操作)
# 移除旧版本
yum remove kernel-tools-libs kernel-tools -y
# 安装新版本
# 如果安装ml版本执行:
yum --disablerepo=* --enablerepo=elrepo-kernel install kernel-ml-tools
# 如果安装lt版本执行:
yum --disablerepo=* --enablerepo=elrepo-kernel install kernel-lt-tools
6、重启服务器,执行 reboot
7、查看内核
uname -r
# 5.3.8-1.el7.elrepo.x86_64 显示新版内核即表示升级成功
# 一键升级内核脚本
vim updateCore.sh
复制以下脚本内容到脚本文件中
See More
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
red='\033[0;31m'
green='\033[0;32m'
yellow='\033[0;33m'
plain='\033[0m'
[[ $EUID -ne 0 ]] && echo -e "[${red}Error${plain}] This script must be run as root!" && exit 1
k=$(uname -r)
echo "${red}当前内核版本 ${green}$k"
echo "${red}升级linux内核${green}"
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install -y https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
echo "${red}安装ml内核${green}"
yum --enablerepo=elrepo-kernel -y install kernel-ml-devel kernel-ml
echo "${red}设置为默认内核${green}"
grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
echo "${red}查看已安装的内核${green}"
rpm -qa | grep kernel
echo "${red}移除旧版本内核${green}"
yum remove k
echo "${red}移除旧版本工具包${green}"
yum remove kernel-tools-libs kernel-tools -y
echo "${red}安装新版本工具包${green}"
yum --disablerepo=* --enablerepo=elrepo-kernel -y install kernel-ml-tools
echo "${green}升级完成,清重启机器(reboot)${green}"
chmod +x updateCore.sh && ./updateCore.sh