前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7.x系统内核升级到最新版

CentOS7.x系统内核升级到最新版

作者头像
华创信息技术
发布2022-05-28 10:23:08
2890
发布2022-05-28 10:23:08
举报
文章被收录于专栏:华创信息技术华创信息技术

文章时间:2020年12月20日 23:33:55 解决问题:将CentOS7.x版本系统的内核升级到最新版 ps:CentOS7.x系统自带的3.10.x内核存在一些Bugs,导致运行的Docker、kubernetes不稳定,建议升级内核,容器使用的坑会少很多

第一步 更新yum(脚本内已集成)

代码语言:javascript
复制
yum update

第二步 执行脚本

下面这个脚本,请直接全部复制,然后进入到linux内,自行创建一个sh文件,然后执行

脚本执行后输入1、2对应下面的2条:(1和2依次执行) 1 会进行yum update升级并重启 2 选择最新内核所代表的最前面的数字,确认执行再次输入y进行确认

执行脚本

代码语言:javascript
复制
sh upgradekernel.sh

脚本文件↓,无需修改请全部复制即可!

代码语言:javascript
复制
#!/bin/bash

clear;

function upgradeYum()
{
    yum clean all;
    yum update -y;
    reboot;
}

function upgradeKernel()
{
    rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org;
    rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm;
    yum --disablerepo="*" --enablerepo="elrepo-kernel" list available;
    yum --enablerepo=elrepo-kernel install -y kernel-ml;
    grub2-mkconfig -o /boot/grub2/grub.cfg;
    grub2-editenv list;
    awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg;
    echo -n  "请输入最新的内核编号 ->";
    read  num;
    grub2-set-default $num;
    grub2-editenv list;
}

function confirmKernel()
{
    echo -n  "确定内核与输入的对应吗? 如果是请输入(y),否则输入(n) ->";
    read confirmInput;
    if [ "$confirmInput" == 'y' ]; then
        reboot;
    elif [ "$selected" == 'n' ]; then
        exit;
    else
        confirmKernel;
        return;
    fi;
}

function removeOldKernel()
{
    IFS=$'\n';
    for LINE in `rpm -qa | grep kernel- | grep 3.`; do
        yum -y remove ${LINE};
    done;
    reboot;
}

function checkSystem()
{
    cat /etc/redhat-release;
    uname -sr;
    uname -a;
    echo "[Notice] Confirm Upgrade Kernel? please select: (1~4)"
    select selected in '执行yum update输入1' '升级内核请输入2' '删除旧的内核' 'Exit'; do break; done;
    [ "$selected" == 'Exit' ] && echo 'Exit Upgrade.' && exit;
    if [ "$selected" == '执行yum update输入1' ]; then
        upgradeYum;
    elif [ "$selected" == '升级内核请输入2' ]; then
        upgradeKernel;
        confirmKernel;
    elif [ "$selected" == '删除旧的内核' ]; then
        removeOldKernel;
    else
        ConfirmInstall;
        return;
    fi;
    echo "[OK] You Selected: ${selected}";
}

checkSystem;
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-12-21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第一步 更新yum(脚本内已集成)
  • 第二步 执行脚本
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档