Linux Kernel 7.1.2 编译安装 & NVIDIA 驱动修复报告
【摘要】 Linux Kernel 7.1.2 编译安装 & NVIDIA 驱动修复报告报告日期:2026-06-30系统环境:openEuler 25.09 x86_64CPU:6 核 | 内存:30 GiB | 编译器:GCC 12.3.1GPU:NVIDIA GeForce GTX 750(GM107)原始内核:7.0.11 → 目标内核:7.1.2(最新稳定版)一、内核编译安装1.1 源码下载...
Linux 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 编译产物
| 文件 | 大小 | 说明 |
|---|---|---|
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 专有驱动 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.xz
cd 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
四、注意事项
- 重启后生效:需重启系统进入
7.1.2内核 - 回退方案:若新内核启动异常,可在 GRUB 菜单选择
openEuler (7.0.11) 25.09 - NVIDIA 驱动更新:未来再次升级内核时,需重新执行
nvidia-installer --kernel-module-only步骤 - 显示器连接:请确保显示器已正确插入 GTX 750 的输出接口
报告由 AtomCode (deepseek-v4-flash) 自动生成
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)