openEuler 25.09 编译安装Kernel 7.1.2 & NVIDIA 驱动修复报告
openEuler 25.09 编译安装Kernel 7.1.2 & NVIDIA 驱动修复报告
一、内核编译安装
1.1 源码下载
| 项目 | 说明 |
|---|---|
| 镜像源 | 清华大学 TUNA(mirrors.tuna.tsinghua.edu.cn) |
| 下载地址 | https://mirrors.tuna.tsinghua.edu.cn/kernel/v7.x/linux-7.1.2.tar.xz |
| 文件大小 | 151 MB |
| 完整性校验 | xz 校验通过 |
1.2 编译配置
# 使用当前运行内核配置作为基础 zcat /proc/config.gz > .config make olddefconfig # 总配置项:8073 个 # 启用 ccache 加速增量编译
1.3 编译产物
| 文件 | 大小 | 说明 |
|---|---|---|
vmlinux | 456 MB | 未压缩内核映像 |
bzImage | 14 MB | 可引导压缩内核映像 |
| 内核模块 | 2519 个 .ko | 可加载内核模块 |
| 编译日志 | 18,255 行 | make -j$(nproc) 完整输出 |
1.4 安装位置
| 组件 | 目标路径 | 大小 |
|---|---|---|
| 内核镜像 | /boot/vmlinuz-7.1.2 | 14 MB |
| 符号表 | /boot/System.map-7.1.2 | 8.2 MB |
| 内核配置 | /boot/config-7.1.2 | — |
| 内存盘 | /boot/initramfs-7.1.2.img | 139 MB |
| 模块目录 | /lib/modules/7.1.2/ | — |
1.5 GRUB 启动菜单
index=0 openEuler (7.1.2) 25.09 ← 默认启动 index=1 openEuler (7.0.11) 25.09 ← 上一版本 index=2 openEuler (7.0.10) ... ← 原厂内核
二、NVIDIA 驱动修复
2.1 问题原因
nvidia.ko/nvidia-drm.ko/nvidia-modeset.ko/nvidia-uvm.ko缺失UKUI 图形界面(lightdm)无法启动
nvidia-smi无法与驱动通信
2.2 修复步骤
# 1. 安装 dkms 工具 dnf install -y dkms # 2. 提取 NVIDIA 官方驱动安装包 cd /opt/softapp ./NVIDIA-Linux-x86_64-580.159.04.run --extract-only cd NVIDIA-Linux-x86_64-580.159.04 # 3. 编译内核模块(针对 7.1.2) ./nvidia-installer \ --kernel-module-only \ --kernel-source-path=/lib/modules/7.1.2/build \ --no-cc-version-check --no-x-check --ui=none \ --no-questions --accept-license # 4. 更新模块依赖并加载 depmod -a 7.1.2 modprobe nvidia modprobe nvidia-drm modprobe nvidia-modeset modprobe nvidia-uvm # 5. 配置开机自动加载 cat > /etc/modules-load.d/nvidia.conf << EOF nvidia nvidia-drm nvidia-modeset nvidia-uvm EOF # 6. 重建 initramfs(加入 NVIDIA 驱动) dracut -f --add-drivers "nvidia nvidia-drm nvidia-modeset nvidia-uvm" \ /boot/initramfs-7.1.2.img 7.1.2 # 7. 重启显示管理器 systemctl restart lightdm
2.3 修复结果
GPU: NVIDIA GeForce GTX 750 (GM107) 1024 MB 驱动: NVIDIA 580.159.04 CUDA: 13.0 nvidia-smi: 正常工作(46°C, 1W) 模块加载: nvidia / nvidia-drm / nvidia-modeset / nvidia-uvm 显示服务: lightdm 运行中,Xorg 使用 NVIDIA 驱动
三、完整操作命令速查
编译内核
# 下载 wget https://mirrors.tuna.tsinghua.edu.cn/kernel/v7.x/linux-7.1.2.tar.xz tar -xJf linux-7.1.2.tar.xzcd linux-7.1.2 # 配置zcat /proc/config.gz > .config make olddefconfig # 编译 export CC="ccache gcc" make -j$(nproc) # 安装 make modules_install make install # 更新 GRUB grub2-mkconfig -o /boot/grub2/grub.cfg grubby --set-default /boot/vmlinuz-7.1.2
安装 NVIDIA 驱动(内核升级后)
cd /opt/softapp ./NVIDIA-Linux-x86_64-580.159.04.run --extract-only cd NVIDIA-Linux-x86_64-580.159.04 ./nvidia-installer --kernel-module-only \ --kernel-source-path=/lib/modules/7.1.2/build \ --no-cc-version-check --no-x-check --ui=none \ --no-questions --accept-license depmod -a 7.1.2 dracut -f --add-drivers "nvidia nvidia-drm nvidia-modeset nvidia-uvm" \ /boot/initramfs-7.1.2.img 7.1.2
四、注意事项
目录 返回
首页