温馨提示×

Centos怎么替换内核版本

小樊
34
2026-08-19 14:42:14
栏目: 智能运维

CentOS 上替换(升级或降级)内核版本,常见做法有 yum / dnf 安装官方内核手动安装 RPM编译内核 三种。下面按 最常用 → 进阶 给你一个完整说明。


一、查看当前内核

uname -r

查看已安装内核:

rpm -qa | grep kernel

二、使用 yum / dnf 替换内核(✅ 推荐)

✅ CentOS 7

yum install -y kernel

✅ CentOS 8 / Stream

dnf install -y kernel

安装完成后:

reboot

系统会自动使用 最新内核


三、安装指定版本内核(常见需求)

1️⃣ 查看可用内核版本

yum list available kernel

或(CentOS 8):

dnf list kernel

2️⃣ 安装指定版本

例如:

yum install -y kernel-3.10.0-1160.el7

四、设置默认启动内核(非常重要)

1️⃣ 查看当前 grub 内核列表

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

示例输出:

0 : CentOS Linux (5.14.0-xxx)
1 : CentOS Linux (3.10.0-1160)

2️⃣ 设置默认内核

grub2-set-default 1

或指定名称:

grub2-set-default "CentOS Linux (3.10.0-1160.el7.x86_64)"

3️⃣ 重新生成 grub 配置

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

4️⃣ 重启

reboot

验证:

uname -r

五、删除旧内核(可选)

⚠️ 至少保留一个可用内核

yum remove kernel-旧版本

或:

package-cleanup --oldkernels --count=2

六、ELRepo 安装新内核(常用于升级到 5.x / 6.x)

1️⃣ 安装 ELRepo

yum install -y epel-release
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

CentOS 7:

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

2️⃣ 安装新内核

yum --enablerepo=elrepo-kernel install -y kernel-ml
  • kernel-ml:主线最新
  • kernel-lt:长期支持

七、手动编译内核(不推荐新手)

流程简述:

wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.x.tar.xz
tar -xf linux-6.x.tar.xz
cd linux-6.x
make menuconfig
make -j$(nproc)
make modules_install
make install
grub2-mkconfig -o /boot/grub2/grub.cfg

⚠️ 风险高,容易无法启动


八、常见问题

❓ 内核切换后无法启动

  • 检查 /boot 是否满
  • 是否缺少 initramfs
  • 是否驱动不兼容

❓ 如何锁定内核版本?

yum install -y yum-plugin-versionlock
yum versionlock kernel-*

九、总结(最常用流程)

yum install -y kernel
grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot

如果你愿意,可以告诉我:

  • ✅ CentOS 版本(7 / 8 / Stream)
  • ✅ 想 升级 还是 降级
  • ✅ 是否用于生产环境

我可以给你 精确命令方案

0