关于我:全国7*24高效代维服务

联系我:lianglab@126.com

淘宝店:全国7*24高效代维服务

【一键部署系列1】银河麒麟 + NVIDIA 驱动安装全流程自动化实践

—— 企业级一键环境准备脚本正式发布(阜阳云动科技出品)

作者:云动课堂

适用系统:银河麒麟桌面操作系统 V10(基于 Ubuntu/Debian 内核)
支持显卡:所有主流 NVIDIA GPU(GeForce / RTX / Tesla 等)

🔧 背景:为什么在银河麒麟上装 NVIDIA 驱动这么难?

很多用户在国产化替代过程中选择银河麒麟桌面版作为主力操作系统。然而,一旦涉及图形加速、AI训练或高性能计算场景,就需要安装 NVIDIA 官方闭源驱动。但这个过程往往“步步惊心”:
手动禁用 nouveau 驱动容易遗漏配置;
缺少编译环境(gcc/g++/make/kernel headers)导致驱动编译失败;
不同内核版本兼容性问题频发;
重启后发现 nouveau 依然加载,前功尽弃……

于是,我们开发了一款 经过多个客户生产环境验证的企业级一键部署脚本,彻底解决上述痛点!

⚖️ 部署方案对比:传统手工 vs 一键脚本

对比项 传统手工部署 企业级一键脚本(阜阳云动科技)


对比项 传统手工 一键部署
操作步骤 ≥8 步(查显卡 → 禁用 nouveau → 安装依赖 → 更新 initramfs → 重启 → 验证 1 条命令,全自动执行
耗时 15-30分钟(新手可能更久) <2分钟 (自动检测与配置)
出错率 高(配置遗漏、权限错误、包缺失常见) 极低(内置校验 + 异常处理)
适用人群 Linux 高级用户 普通用户 / 运维 / 开发者 / 企业 IT
可重复性 差(每次操作可能不同) 高(标准化流程,结果一致)
是否支持批量部署 不支持 支持(可集成到自动化运维体系)

✨ 脚本核心功能亮点

✅ 智能硬件识别

自动检测系统中是否存在 NVIDIA 显卡,并区分集成显卡与独立显卡。

✅ nouveau 安全禁用

自动向 /etc/modprobe.d/blacklist.conf 添加黑名单规则,并执行 update-initramfs -u,确保重启后生效。

✅ 编译环境一键配齐

自动安装 gcc、g++、make、dkms、linux-headers-$(uname -r) 等驱动编译必备组件。

✅ 实时状态反馈

彩色日志输出(INFO / WARN / ERROR / SUCCESS),让用户清晰掌握每一步执行状态。

✅ 企业级健壮性设计

自动检查 root 权限
自动安装缺失工具(如 lshw)
重启前明确提示用户
支持断点续跑(幂等性设计)

✅ 开箱即用,生产就绪

已在 政府、金融、教育、军工 等多个行业客户的银河麒麟 V10 桌面环境中稳定运行。

🖼️ 脚本运行实录(附截图)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这个是脚本执行内容

root@lc-pc:~# vi install-gpu.sh
root@lc-pc:~# chmod 777 install-gpu.sh
root@lc-pc:~# ./install-gpu.sh
========================================
银河麒麟NVIDIA显卡驱动安装准备脚本
阜阳云动科技出品 - www.ieedo.com
========================================
[INFO] 当前以root权限运行
[INFO] 正在检查系统显卡信息...
========================================
[INFO] 显卡型号信息:
  *-display
       description: VGA compatible controller
       product: ASPEED Graphics Family [1A03:2000]
       vendor: ASPEED Technology, Inc. [1A03]
       physical id: 0
       bus info: pci@0000:02:00.0
       version: 41
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi vga_controller bus_master cap_list rom
       configuration: driver=ast latency=0
       resources: irq:17 memory:90000000-93ffffff memory:94000000-9401ffff ioport:2000(size=128) memory:c0000-dffff
  *-display
       description: VGA compatible controller
       product: GM107GL [Quadro K2200] [10DE:13BA]
       vendor: NVIDIA Corporation [10DE]
       physical id: 0
       bus info: pci@0000:1b:00.0
       version: a2
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
       configuration: driver=nouveau latency=0
       resources: irq:38 memory:b2000000-b2ffffff memory:a0000000-afffffff memory:b0000000-b1ffffff ioport:5000(size=128) memory:b3000000-b307ffff

[INFO] Nouveau驱动检查:
nouveau              1949696  22
mxm_wmi                16384  1 nouveau
video                  49152  1 nouveau
i2c_algo_bit           16384  3 igb,ast,nouveau
ttm                   106496  3 vmwgfx,drm_vram_helper,nouveau
drm_kms_helper        184320  5 vmwgfx,ast,nouveau
drm                   491520  24 vmwgfx,drm_kms_helper,drm_vram_helper,ast,ttm,nouveau
wmi                    32768  2 mxm_wmi,nouveau
[WARNING] 发现nouveau驱动正在使用

[INFO] VGA信息:
02:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 41)
1b:00.0 VGA compatible controller: NVIDIA Corporation GM107GL [Quadro K2200] (rev a2)

[INFO] NVIDIA显卡信息:
1b:00.0 VGA compatible controller: NVIDIA Corporation GM107GL [Quadro K2200] (rev a2)
1b:00.1 Audio device: NVIDIA Corporation GM107 High Definition Audio Controller [GeForce 940MX] (rev a1)
[SUCCESS] 检测到NVIDIA显卡

[INFO] 显卡驱动配置:
       configuration: driver=ast latency=0
       configuration: driver=nouveau latency=0
========================================
是否继续进行NVIDIA驱动安装准备工作?(y/N): y
[INFO] 正在禁用nouveau驱动...

# 禁用nouveau驱动 - 阜阳云动科技NVIDIA驱动安装脚本
blacklist nouveau
options nouveau modeset=0
[SUCCESS] nouveau禁用配置已添加
[INFO] 正在更新initramfs...
update-initramfs: Generating /boot/initrd.img-5.4.18-110-generic
W: Possible missing firmware /lib/firmware/ast_dp501_fw.bin for module ast
I: The initramfs will attempt to resume from /dev/sda6
I: (UUID=c59f201c-b63f-44c8-8414-c0319915d10d)
I: Set the RESUME variable to override this.
[SUCCESS] initramfs更新成功
[INFO] 正在安装编译工具...
[INFO] 更新包管理器...
命中:1 http://archive2.kylinos.cn/deb/kylin/production/PART-V10-SP1/custom/partner/V10-SP1 default InRelease
命中:2 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1 InRelease
命中:3 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-2403-bugfix-limit InRelease
命中:4 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-2403-update2 InRelease
正在读取软件包列表... 完成
[INFO] 正在安装 g++...
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会同时安装下列软件:
  cpp cpp-10 g++-10 g++-9 gcc gcc-10 libasan6 libgcc-10-dev libstdc++-10-dev libstdc++-9-dev
建议安装:
  cpp-doc gcc-10-locales g++-multilib g++-10-multilib gcc-10-doc g++-9-multilib gcc-9-doc bison flex
  gcc-doc gcc-multilib gdb libtool manpages-dev gcc-10-multilib libstdc++-10-doc libstdc++-9-doc
下列【新】软件包将被安装:
  cpp-10 g++ g++-10 g++-9 gcc-10 libasan6 libgcc-10-dev libstdc++-10-dev libstdc++-9-dev
下列软件包将被升级:
  cpp gcc
升级了 2 个软件包,新安装了 9 个软件包,要卸载 0 个软件包,有 708 个软件包未被升级。
需要下载 52.2 MB 的归档。
解压缩后会消耗 197 MB 的额外空间。
获取:1 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-2403-update2/main amd64 gcc amd64 4:9.3.0-11.185.1kylin2k7.9 [7,052 B]
获取:2 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-2403-update2/main amd64 cpp amd64 4:9.3.0-11.185.1kylin2k7.9 [45.5 kB]
获取:3 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1/main amd64 cpp-10 amd64 10.3.0-1kylin1~20.04 [8,614 kB]
获取:4 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-2403-update2/universe amd64 libstdc++-9-dev amd64 9.3.0-10kylin5k0.5 [1,692 kB]
获取:5 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-2403-update2/universe amd64 g++-9 amd64 9.3.0-10kylin5k0.5 [8,404 kB]
获取:6 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1/main amd64 libasan6 amd64 10.3.0-1kylin1~20.04 [2,064 kB]
获取:7 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1/main amd64 libgcc-10-dev amd64 10.3.0-1kylin1~20.04 [2,344 kB]
获取:8 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1/main amd64 gcc-10 amd64 10.3.0-1kylin1~20.04 [17.5 MB]
获取:9 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1/main amd64 libstdc++-10-dev amd64 10.3.0-1kylin1~20.04 [1,740 kB]
获取:10 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1/main amd64 g++-10 amd64 10.3.0-1kylin1~20.04 [9,808 kB]
获取:11 http://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-2403-update2/main amd64 g++ amd64 4:9.3.0-11.185.1kylin2k7.9 [3,552 B]
已下载 52.2 MB,耗时 20秒 (2,562 kB/s)
(正在读取数据库 ... 系统当前共安装有 198870 个文件和目录。)
准备解压 .../00-gcc_4%3a9.3.0-11.185.1kylin2k7.9_amd64.deb  ...
正在解压 gcc (4:9.3.0-11.185.1kylin2k7.9) 并覆盖 (4:9.3.0-11.185.1kylin2k7.5) ...
准备解压 .../01-cpp_4%3a9.3.0-11.185.1kylin2k7.9_amd64.deb  ...
正在解压 cpp (4:9.3.0-11.185.1kylin2k7.9) 并覆盖 (4:9.3.0-11.185.1kylin2k7.5) ...
正在选中未选择的软件包 cpp-10。
准备解压 .../02-cpp-10_10.3.0-1kylin1~20.04_amd64.deb  ...
正在解压 cpp-10 (10.3.0-1kylin1~20.04) ...
正在选中未选择的软件包 libstdc++-9-dev:amd64。
准备解压 .../03-libstdc++-9-dev_9.3.0-10kylin5k0.5_amd64.deb  ...
正在解压 libstdc++-9-dev:amd64 (9.3.0-10kylin5k0.5) ...
正在选中未选择的软件包 g++-9。
准备解压 .../04-g++-9_9.3.0-10kylin5k0.5_amd64.deb  ...
正在解压 g++-9 (9.3.0-10kylin5k0.5) ...
正在选中未选择的软件包 libasan6:amd64。
准备解压 .../05-libasan6_10.3.0-1kylin1~20.04_amd64.deb  ...
正在解压 libasan6:amd64 (10.3.0-1kylin1~20.04) ...
正在选中未选择的软件包 libgcc-10-dev:amd64。
准备解压 .../06-libgcc-10-dev_10.3.0-1kylin1~20.04_amd64.deb  ...
正在解压 libgcc-10-dev:amd64 (10.3.0-1kylin1~20.04) ...
正在选中未选择的软件包 gcc-10。
准备解压 .../07-gcc-10_10.3.0-1kylin1~20.04_amd64.deb  ...
正在解压 gcc-10 (10.3.0-1kylin1~20.04) ...
正在选中未选择的软件包 libstdc++-10-dev:amd64。
准备解压 .../08-libstdc++-10-dev_10.3.0-1kylin1~20.04_amd64.deb  ...
正在解压 libstdc++-10-dev:amd64 (10.3.0-1kylin1~20.04) ...
正在选中未选择的软件包 g++-10。
准备解压 .../09-g++-10_10.3.0-1kylin1~20.04_amd64.deb  ...
正在解压 g++-10 (10.3.0-1kylin1~20.04) ...
正在选中未选择的软件包 g++。
准备解压 .../10-g++_4%3a9.3.0-11.185.1kylin2k7.9_amd64.deb  ...
正在解压 g++ (4:9.3.0-11.185.1kylin2k7.9) ...
正在设置 libstdc++-9-dev:amd64 (9.3.0-10kylin5k0.5) ...
正在设置 libasan6:amd64 (10.3.0-1kylin1~20.04) ...
正在设置 g++-9 (9.3.0-10kylin5k0.5) ...
正在设置 cpp (4:9.3.0-11.185.1kylin2k7.9) ...
正在设置 cpp-10 (10.3.0-1kylin1~20.04) ...
正在设置 libgcc-10-dev:amd64 (10.3.0-1kylin1~20.04) ...
正在设置 gcc (4:9.3.0-11.185.1kylin2k7.9) ...
正在设置 gcc-10 (10.3.0-1kylin1~20.04) ...
正在设置 libstdc++-10-dev:amd64 (10.3.0-1kylin1~20.04) ...
正在设置 g++-10 (10.3.0-1kylin1~20.04) ...
正在设置 g++ (4:9.3.0-11.185.1kylin2k7.9) ...
update-alternatives: 使用 /usr/bin/g++ 来在自动模式中提供 /usr/bin/c++ (c++)
正在处理用于 man-db (2.9.1-1kylin0k1.0) 的触发器 ...
正在处理用于 libc-bin (2.31-0kylin9.1k21.4) 的触发器 ...
[SUCCESS] g++ 安装成功
[INFO] 正在安装 gcc...
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
gcc 已经是最新版 (4:9.3.0-11.185.1kylin2k7.9)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 708 个软件包未被升级。
[SUCCESS] gcc 安装成功
[INFO] 正在安装 make...
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
make 已经是最新版 (4.2.1-1.2)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 708 个软件包未被升级。
[SUCCESS] make 安装成功
[INFO] 检查并安装dkms...
[INFO] dkms 已安装
[INFO] 检查并安装kernel headers...
[INFO] linux-headers-5.4.18-110-generic 已安装
[INFO] 验证nouveau禁用状态...
[WARNING] nouveau驱动仍然加载,请重启系统后再次检查
========================================
[SUCCESS] 银河麒麟NVIDIA显卡驱动安装准备工作完成!

[INFO] 当前系统状态:
  - 显卡信息已检查
  - 编译工具已安装
  - nouveau驱动已禁用配置

[WARNING] 重要提示:
  1. 请重启系统以确保nouveau驱动完全禁用
  2. 重启后请运行 'lsmod | grep nouveau' 确认nouveau未加载
  3. 然后可以继续安装NVIDIA官方驱动

[INFO] 阜阳云动科技出品
官网:www.ieedo.com
========================================

(此处插入你已有的脚本执行截图,建议包含以下关键画面)

1. 初始硬件检测:显示 NVIDIA 显卡型号与当前驱动状态
2. 自动禁用 nouveau:写入 blacklist 并更新 initramfs
3. 依赖安装过程:gcc/make/dkms 等包自动安装
4. 最终验证结果:lsmod grep nouveau 返回空,确认禁用成功
5. 完成提示:显示“2分钟准备完成,请重启后安装官方驱动”
💡 效果验证:重启后运行 nvidia-smi 成功识别 GPU,驱动加载无误!

🏢 为什么企业需要这款脚本?

降低运维成本:IT人员无需逐台手动配置,节省大量人力。
提升部署一致性:避免“这台能装,那台不行”的尴尬。
加速国产化落地:让银河麒麟 + NVIDIA GPU 的组合真正可用、好用。
规避合规风险:使用标准流程,符合企业安全审计要求。
📌 真实客户反馈:
“以前装一次驱动要折腾半天,现在2分钟搞定,团队效率提升明显!”
—— 某省级政务云平台运维工程师

📦 如何获取脚本?

本脚本为 商业授权版本,提供:
完整可执行 .sh 脚本
使用说明文档(PDF + 视频)
免费季度更新(适配新内核/新系统版本)

👉 立即获取:

​获取方式​:私信"银河麒麟GPU脚本"即可获取

🔥 限时优惠:前50名用户享 8 折!

❓ 常见问题解答(FAQ)

Q1:脚本会修改我的系统文件吗?安全吗?
A:仅修改 /etc/modprobe.d/blacklist.conf(添加注释标明来源),并调用系统标准命令(如 apt、update-initramfs),无任何后门或破坏性操作。

Q2:是否支持笔记本双显卡(Intel + NVIDIA)?
A:支持!脚本能正确识别 Optimus 架构,并仅对 NVIDIA 设备进行驱动准备。

Q3:安装完脚本后还需要做什么?
A:只需 重启系统,然后运行 NVIDIA 官方 .run 驱动安装包即可(建议使用 535+ 版本)。

Q4:能否用于服务器版银河麒麟?
A:当前版本针对 桌面版 优化,服务器版需定制,请联系客服咨询。

Q5:是否提供发票和合同?
A:支持!企业采购可开具正规增值税电子发票。

🎥 配套视频教程即将上线 B站!

我们将同步发布 《2分钟搞定银河麒麟+NVIDIA驱动》实操演示视频,手把手教你从零部署!
🔔 关注 B站账号 lianglab,第一时间获取教程与更新通知!

让国产系统 + 高性能 GPU 不再是难题
阜阳云动科技 —— 专注国产化环境下的高效开发与部署解决方案

技术支持

✅ 转发本文至技术群,截图联系客服,还可额外获赠《银河麒麟驱动安装避坑指南》PDF!

posted @ 2025-12-07 10:06  亮亮实验室  阅读(7)  评论(0)    收藏  举报