华为昇腾驱动和固件安装卸载指南

使用昇腾算力部署大模型服务的前置准备


重要提醒⚠️:首次安装请按「驱动 → 固件」的顺序走;如果是覆盖安装或升级,顺序反过来——「固件 → 驱动」。另外,整个安装过程都需要 root 用户权限,记得先 su - root 切过去。

1. 确认操作系统

uname -m && cat /etc/*release

2. 获取软件包

确定你的算力设备系列(比如 910B 或 310P3),然后去 昇腾社区 下载对应的驱动和固件包。

包有 run、rpm、deb 三种格式,装出来的效果一样,区别在于它们各自支持的 OS 范围不太一样。挑一个跟你系统匹配的就好,不确定的话优先选 run 格式,最通用。

3. 创建运行用户(仅 .run 格式需要)

如果你用的是 rpm 或 deb 包,系统会自动帮你创建 HwHiAiUser 用户和用户组,这一段可以跳过,直接看第 4 步。

用 run 包的话需要手动创建运行用户。以 root 登录后执行:

groupadd HwHiAiUser
useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash

4. 检查环境

是否装过旧版本

lsmod | grep drv_pcie_host
  • 有输出 → 说明之前装过,需要先卸载旧的驱动再装新版。卸载步骤见 第 8 节

必要依赖

make 工具:执行 make -v,能看到版本号就说明有了。

dkms、gcc、linux-headers 等编译依赖

# Ubuntu / Debian
dpkg-query -s dkms
dpkg-query -s gcc
dpkg-query -s linux-headers-$(uname -r)
# BC Linux / CentOS / RHEL
rpm -qa | grep dkms
rpm -qa | grep gcc
rpm -qa | grep kernel-bek-headers-$(uname -r)
rpm -qa | grep kernel-bek-devel-$(uname -r)

这些依赖如果都在,安装驱动时会自动走 dkms 编译,省心不少。缺哪个就 apt installyum install 补上。

5. 安装驱动(.run包为例)

第 1 步:给安装包加可执行权限(记得把文件名里的 x.x.x{arch} 替换成你实际的版本号和架构):

chmod +x Ascend-hdk-310p-npu-driver_x.x.x_linux-{arch}.run

第 2 步:校验包的完整性,防止因为包不完整导致奇怪问题:

./Ascend-hdk-310p-npu-driver_x.x.x_linux-{arch}.run --check

正常输出:

Verifying archive integrity...  100%   SHA256 checksums are OK. All good.

第 3 步:正式安装,默认会装到 /usr/local/Ascend

./Ascend-hdk-310p-npu-driver_x.x.x_linux-{arch}.run --full

看到这行就说明驱动装好了:

Driver package installed successfully!

安装过程的详细日志在 /var/log/ascend_seclog/ascend_install.log

装完后跑一下 npu-smi info,能查看算力信息:

6. 安装固件(.run)

固件安装和驱动的流程几乎一样:

第 1 步:加可执行权限:

chmod +x Ascend-hdk-310p-npu-firmware_x.x.x.x.X.run

第 2 步:校验:

./Ascend-hdk-310p-npu-firmware_x.x.x.x.X.run --check

正常输出:

Verifying archive integrity...  100%   SHA256 checksums are OK. All good.

第 3 步:安装:

./Ascend-hdk-310p-npu-firmware_x.x.x.x.X.run --full

注意看终端提示,可能会让你重启系统或下电再上电。

Firmware package installed successfully!

7. 卸载固件(.run)

卸载也需要 root 权限,先 su - root

两种方式任选一种:

方式一:直接调卸载脚本(适用于你已经知道装在哪):

<install-path>/firmware/script/uninstall.sh

不确定安装路径的话,cat /etc/ascend_install.info 看下。

方式二:用原始安装包卸载(适用于安装包还在手边):

./Ascend-hdk-310p-npu-firmware_x.x.x.x.X.run --uninstall
Firmware package uninstalled successfully!

8. 卸载驱动(.run)

同样需要 root 用户,跟固件一样:

方式一:直接调脚本:

<install-path>/driver/script/uninstall.sh

方式二:用安装包卸载:

./Ascend-hdk-310p-npu-driver_x.x.x_linux-{arch}.run --uninstall
Driver package uninstalled successfully!

⚠️ 卸载被占用的情况

如果业务或容器还占着 davinci 节点,卸载时会直接报错拦住你:

The davinci nodes are occupied by some processes, please stop processes and install or uninstall again, details in : /var/log/ascend_seclog/ascend_install.log

这时候可以加 --force 强制卸载,但注意这可能会影响正在跑的业务:

./Ascend-hdk-310p-npu-driver_x.x.x_linux-{arch}.run --uninstall --force

延伸阅读


Logo

鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。

更多推荐