You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS RHEL虚拟机内核降级至4.8版本失败求助

AWS RHEL虚拟机内核降级至4.8版本失败求助

兄弟,你这问题根源在于用Ubuntu的deb包转格式成rpm安装——完全搞错方向了!不同发行版的内核包结构、依赖体系天差地别,这么操作必然会出现依赖冲突(比如你遇到的libcrypto.so.1.0.0缺失,因为RHEL9默认用的是OpenSSL 3.0,根本没有1.0版本的库)。

给你一套靠谱的解决方案,直接从源码编译4.8内核,适配你的RHEL9系统:

第一步:清理错误安装的Ubuntu内核包

先把之前装的不兼容包删掉,避免后续冲突:

sudo yum remove linux-headers-4.8.0-040800-generic linux-image-4.8.0-040800-generic

第二步:安装编译内核的依赖工具

编译内核需要一系列开发组件,先装全:

sudo yum groupinstall "Development Tools"
sudo yum install ncurses-devel bison flex elfutils-libelf-devel openssl-devel

第三步:下载并解压4.8内核源码

从官方内核仓库下载源码包:

wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.8.tar.xz
tar -xf linux-4.8.tar.xz
cd linux-4.8

第四步:配置内核参数

用当前系统的内核配置作为基础,减少兼容性问题:

cp /boot/config-$(uname -r) .config
make oldconfig

执行make oldconfig时会弹出一堆配置选项,直接按回车选默认即可,除非你有特定的研究需求要修改。

第五步:编译并安装内核

开始编译(-j$(nproc)是用所有CPU核心加速,编译时间会比较久,耐心等):

make -j$(nproc)
sudo make modules_install
sudo make install

第六步:设置默认启动4.8内核

编译安装完成后,要让系统默认启动新内核:

  1. 先查看所有内核条目及其索引:
    sudo grubby --info=ALL | grep -E "kernel|index"
    
  2. 找到4.8版本内核对应的index编号,比如假设是1,执行:
    sudo grubby --set-default-index=1  # 替换成你实际查到的编号
    

第七步:重启验证

sudo reboot

重启后执行uname -r,如果显示4.8开头的版本号,就说明成功了!

注意事项

  • 4.8是非常老的内核版本,和RHEL9的用户空间工具(比如systemd、udev)可能存在兼容性问题,这是正常的——毕竟你是做研究,提前做好心理准备。
  • AWS EC2虚拟机有特殊的驱动(比如网络、存储),编译时要确保这些驱动被选中,不然重启后可能无法联网或识别磁盘。在make oldconfig过程中,留意和AWS/EC2相关的驱动选项,保持默认选中即可。
  • 以后别再跨发行版转包安装了,不同发行版的包不是通用的!

备注:内容来源于stack exchange,提问作者Neetesshhr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 15:37:42