记录日常工作关于系统运维,虚拟化云计算,数据库,网络安全等各方面问题。

openEuler 25.09  编译安装Kernel 7.1.2  & NVIDIA 驱动修复报告

报告日期:2026-06-30
系统环境:openEuler 25.09 x86_64
CPU:6 核 | 内存:30 GiB | 编译器:GCC 12.3.1
GPU:NVIDIA GeForce GTX 750(GM107)
原始内核:7.0.11 → 目标内核:7.1.2(最新稳定版)


一、内核编译安装

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 编译产物

文件大小说明
vmlinux456 MB未压缩内核映像
bzImage14 MB可引导压缩内核映像
内核模块2519 个 .ko可加载内核模块
编译日志18,255 行make -j$(nproc) 完整输出

1.4 安装位置

组件目标路径大小
内核镜像/boot/vmlinuz-7.1.214 MB
符号表/boot/System.map-7.1.28.2 MB
内核配置/boot/config-7.1.2
内存盘/boot/initramfs-7.1.2.img139 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 专有驱动 580.159.04(GTX 750)的内核模块未针对新内核 7.1.2 重新编译,导致:

  • 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

四、注意事项

  1. 重启后生效:需重启系统进入 7.1.2 内核

  2. 回退方案:若新内核启动异常,可在 GRUB 菜单选择 openEuler (7.0.11) 25.09

  3. NVIDIA 驱动更新:未来再次升级内核时,需重新执行 nvidia-installer --kernel-module-only 步骤

  4. 显示器连接:请确保显示器已正确插入 GTX 750 的输出接口


报告由 AtomCode (deepseek-v4-flash) 自动生成




转载请标明出处【openEuler 25.09 编译安装Kernel 7.1.2 & NVIDIA 驱动修复报告】。

《www.micoder.cc》 虚拟化云计算,系统运维,安全技术服务.

网站已经关闭评论