centos8内核升级

Overview

腾讯云的 CVM,安装了 Centos 7.9 系统,查看内核版本

# uname -r
3.10.0-1160.66.1.el7.x86_64

太低了点,因为最近研究 runccriu,所以内核必须在 5.2 以上,所以需要手动操作一下

操作

下面的操作必须保证跟外网是正常连接的前提下,如果是想在国内环境搞的话,建议切换到国内的源,当然国内的源不一定有你想要的内核版本,源厂家也可能没有同步

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
# yum --disablerepo="*" --enablerepo="elrepo" list available
# 查看elrepo-kernel的版本
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
# 安装可能会稍微卡一下,耐心等待正常结束
yum --disablerepo="*" --enablerepo="elrepo-kernel" install -y kernel-ml
grub2-set-default 0

重启机器,再次检查,内核已经更新到最新版了

# uname -r
5.18.5-1.el8.elrepo.x86_64

希望清理内核软件包,释放一些空间,可以执行下面的命令

rpm -qa | grep kernel|grep -i 3.10 | xargs yum remove -y

在线升级内核

可以参考下面的文章,归纳一下,可能会用到下面的命令,正常来说如果 ssh 登录主机的 session 会断开,之所以叫不重启升级内核,不是说不影响所有服务,也不是完全意义的不重启,按照参考文章说,只是不是完整意义的重启,也就是不需要通过 reboot 命令来重启机器的意思,所以正常来说,通过 uptime 看,还是能看到内核启动

# 这一步跟上面是一样的,都需要安装新的内核文件
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
# 安装可能会稍微卡一下,耐心等待正常结束
yum --disablerepo="*" --enablerepo="elrepo-kernel" install -y kernel-ml

# 查看新老版本
rpm -qa | grep kernel | sort

# 安装kexec-tools工具
yum install -y kexec-tools
kexec -u
kexec -l /boot/vmlinuz-5.19.9-1.el7.elrepo.x86_64 --initrd=/boot/initramfs-5.19.9-1.el7.elrepo.x86_64.img --reuse-cmdline
systemctl kexec

查看内核日志

# dmesg -T
[六 9月 17 14:28:34 2022] Linux version 5.19.9-1.el7.elrepo.x86_64 (mockbuild@Build64R7) (gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2), GNU ld version 2.32-16.el7) #1 SMP PREEMPT_DYNAMIC Thu Sep 15 09:00:56 EDT 2022
[六 9月 17 14:28:34 2022] Command line: root=UUID=4b499d76-769a-40a0-93dc-4a31a59add28 ro net.ifnames=0 biosdevname=0 console=ttyS0,115200 console=tty0 panic=5 crashkernel=2G-8G:256M,8G-16G:512M,16G-:768M intel_idle.max_cstate=1 intel_pstate=disable processor.max_cstate=1 amd_iommu=on iommu=pt
[六 9月 17 14:28:34 2022] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[六 9月 17 14:28:34 2022] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[六 9月 17 14:28:34 2022] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
[六 9月 17 14:28:34 2022] x86/fpu: Supporting XSAVE feature 0x008: 'MPX bounds registers'
[六 9月 17 14:28:34 2022] x86/fpu: Supporting XSAVE feature 0x010: 'MPX CSR'
[六 9月 17 14:28:34 2022] x86/fpu: Supporting XSAVE feature 0x020: 'AVX-512 opmask'
[六 9月 17 14:28:34 2022] x86/fpu: Supporting XSAVE feature 0x040: 'AVX-512 Hi256'
[六 9月 17 14:28:34 2022] x86/fpu: Supporting XSAVE feature 0x080: 'AVX-512 ZMM_Hi256'
[六 9月 17 14:28:34 2022] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
[六 9月 17 14:28:34 2022] x86/fpu: xstate_offset[3]:  832, xstate_sizes[3]:   64
[六 9月 17 14:28:34 2022] x86/fpu: xstate_offset[4]:  896, xstate_sizes[4]:   64
[六 9月 17 14:28:34 2022] x86/fpu: xstate_offset[5]:  960, xstate_sizes[5]:   64
[六 9月 17 14:28:34 2022] x86/fpu: xstate_offset[6]: 1024, xstate_sizes[6]:  512
[六 9月 17 14:28:34 2022] x86/fpu: xstate_offset[7]: 1536, xstate_sizes[7]: 1024
[六 9月 17 14:28:34 2022] x86/fpu: Enabled xstate features 0xff, context size is 2560 bytes, using 'compacted' format.
[六 9月 17 14:28:34 2022] signal: max sigframe size: 3632
[六 9月 17 14:28:34 2022] BIOS-provided physical RAM map:
[六 9月 17 14:28:34 2022] BIOS-e820: [mem 0x0000000000000100-0x000000000009fbff] usable
[六 9月 17 14:28:34 2022] BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reserved
[六 9月 17 14:28:34 2022] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved
[六 9月 17 14:28:34 2022] BIOS-e820: [mem 0x0000000000100000-0x00000000bffddfff] usable
[六 9月 17 14:28:34 2022] BIOS-e820: [mem 0x00000000bffde000-0x00000000bfffffff] reserved
[六 9月 17 14:28:34 2022] BIOS-e820: [mem 0x00000000feffc000-0x00000000feffffff] reserved
[六 9月 17 14:28:34 2022] BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved
[六 9月 17 14:28:34 2022] BIOS-e820: [mem 0x0000000100000000-0x000000013fffffff] usable
[六 9月 17 14:28:34 2022] NX (Execute Disable) protection: active

Reference

  1. Kernel patching with kexec: updating a CentOS 7 kernel without a full reboot
  2. Linux CentOS内核升级
  3. 内核不同命名的介绍
  4. centos7和centos8的一些区别
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值