银河麒麟系统提示“内核版本过低”需手动升级,首选yum源在线升级(sudo yum update kernel* -y后重启),其次离线rpm包批量安装或手动替换/boot文件并更新grub,操作前必须用uname -r、nkvers和lscpu确认版本与架构匹配。

银河麒麟系统提示“内核版本过低”,说明当前运行的内核已不满足安全策略、硬件驱动兼容性或某软件组件的最低要求,必须手动升级才能继续使用相关功能或通过合规检查。
确认当前内核与系统信息
执行 uname -r 查看正在运行的内核版本,例如输出 4.19.90-17.ky10.aarch64;再运行 nkvers 获取完整系统版本(含SP版本号、构建时间、架构),这是后续选择匹配RPM包的关键依据。
【必须执行这一步,跳过会导致安装不匹配的内核包而无法启动】
用 lscpu | grep "Architecture\|Model name" 确认CPU架构(x86_64/aarch64/loongarch64),避免混用不同架构的内核文件。
方法一:YUM源在线升级(推荐给网络通畅环境)
该方式由包管理器自动处理依赖,适合麒麟V10 SP1及以上、已配置有效YUM仓库的服务器。
第一步:清理旧缓存并刷新元数据:sudo yum clean all && sudo yum makecache。
第二步:列出所有可用内核版本:sudo yum list kernel\* --showduplicates | grep -E "(kernel-core|kernel-modules)",重点关注版本号一致、架构匹配的全套包(如 kernel-core-4.19.90-23.18.v2101.ky10.x86_64 及配套 modules 包)。
第三步:执行升级命令:sudo yum update kernel\* -y。此操作会保留旧内核,新内核设为GRUB默认启动项。
注意:升级完成后必须重启,否则 uname -r 仍显示旧版本。
方法二:离线RPM包批量安装(适用于断网或高安全隔离环境)
此法需人工确保所有组件版本严格一致,缺一不可。
下载目标内核全套RPM包:至少包含 kernel、kernel-core、kernel-modules 三个主包,额外按需添加 kernel-modules-extra 和 kernel-devel。
将所有RPM包放入同一目录(如 /tmp/kernel-upgrade/),然后执行:sudo rpm -ivh /tmp/kernel-upgrade/kernel-*.rpm。
【严禁只安装 kernel 主包而遗漏 kernel-core 或 kernel-modules,否则系统重启后将卡在 initramfs 阶段】
若提示缺少 kylin-fonts 或 systemd 相关依赖,需同步安装对应 noarch 或通用架构包。
方法三:手动替换/boot并更新GRUB(仅限紧急修复或无包管理器场景)
此操作风险最高,仅建议在GRUB可编辑、且已验证新内核vmlinuz/initrd.img能正常引导的前提下进行。
① 将新内核的 vmlinuz-5.4.18-42.31 和 initrd.img-5.4.18-42.31 复制到 /boot/ 目录,确保文件权限为 600、属主为 root。
② 编辑 /etc/default/grub,确认 GRUB_DEFAULT=0 并检查 GRUB_TIMEOUT 是否足够长(建议 ≥10 秒)以便手动选启动项。
③ 重建GRUB配置:sudo grub2-mkconfig -o /boot/grub2/grub.cfg(x86_64)或 sudo grub2-mkconfig -o /boot/efi/EFI/kylin/grub.cfg(UEFI aarch64)。
重启系统,进入GRUB菜单,选择新内核条目启动。











