一、前期准备(必做!规避90%报错)

1.1 系统环境检查


openEuler国产化系统的GPU环境配置相较于Ubuntu更繁琐。首先确认系统版本,确保为openEuler22.03系列,避免版本适配问题,输出包含 openEuler 22.03 即为正常

cat /etc/os-release

查看虚拟机是否已经直通NVIDIA物理显卡

lspci | grep -i 'vga\|3d'
lspci | grep -i nvidia

在这里插入图片描述

1.2 关闭系统自带图形界面&禁用nouveau

openEuler默认自带开源nouveau显卡驱动,与NVIDIA官方驱动冲突,必须禁用。先查看nouveau显卡驱动是否已经被禁用

lsmod | grep nouveau

无输出即为已经禁用,无需进行下面步骤,直接到步骤1.3;若存在输出,则继续下面步骤

编辑黑名单配置文件

vi /etc/modprobe.d/blacklist-nouveau.conf

先注释掉 blacklist nvidiafb那一行
在这里插入图片描述

在该文件末尾写入以下内容:

blacklist nouveau
options nouveau modeset=0

更新内核并重启

mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img
dracut /boot/initramfs-$(uname -r).img $(uname -r)
reboot

重启后验证是否禁用成功(无输出即为成功)

lsmod | grep nouveau

1.3 安装依赖工具

openEuler需提前安装编译、内核依赖,否则驱动安装会编译失败:

dnf install -y gcc gcc-c++ kernel-devel kernel-header make cmake wget

二、安装NVIDIA官方显卡驱动

2.1 选择适配驱动版本

官网下载链接:Nvidia驱动下载,建议还是不要下载太新的驱动

在这里插入图片描述

2.2 命令行安装驱动

查看内核版本,查看该目录下的文件即为内核版本,记录下来

cd /usr/src/kernels/

例如我这里是5.10.0-136.12.0.86.oe2203sp1.x86_64

在这里插入图片描述

安装驱动,赋予安装包执行权限

chmod +x NVIDIA-Linux-x86_64-595.80.run

指定内核位置编译驱动,并且跳过图形依赖

./NVIDIA-Linux-x86_64-595.80.run --kernel-source-path=/usr/src/kernels/5.10.0-136.12.0.86.oe2203sp1.x86_64 --no-x-check --no-opengl-files

弹窗中,选择NVIDIA Proprietary,其余默认即可

2.3 验证驱动

安装完成后,执行下方命令,输出显卡信息、驱动版本即安装成功

nvidia-smi

在这里插入图片描述

⚠️ 重点:nvidia-smi显示的CUDA版本为驱动支持的最高CUDA版本,并非系统实际安装版本,后续需手动安装对应CUDA Toolkit

三、安装CUDA Toolkit(版本匹配关键)

3.1 下载适配的CUDA

严格遵循:本地CUDA版本 ≤ nvidia-smi显示的最高支持版本。官网下载链接:CUDA下载openEuler22.03 无专属CUDA,实测兼容 CentOS7 版本驱动

在这里插入图片描述

选择好版本后,浏览器直接输入下面的地址即可下载

在这里插入图片描述

3.2 命令行安装CUDA

先赋予权限

chmod +x cuda_12.4.0_550.54.14_linux.run

安装CUDA

./cuda_12.4.0_550.54.14_linux.run --no-opengl-libs

安装弹窗选择:Do you accept the previously read EULA? 输入 accept

在这个页面不要选择上面的Driver驱动,因为我们已经手动安装过。其余默认即可

在这里插入图片描述

安装完后应该是如下界面,记录下CUDA Toolkit的安装路径,例如我是Toolkit: Installed in /usr/local/cuda-12.4/

在这里插入图片描述
配置CUDA环境变量

vi /etc/profile

写入如下内容,需要替换为实际的安装路径

export PATH=/usr/local/cuda-12.4/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64$LD_LIBRARY_PATH

生效环境变量

source  /etc/profile

3.3 验证CUDA

安装完成后,执行下方命令,输出对应的CUDA版本即为成功

nvcc -V

在这里插入图片描述

四、安装Conda

openEuler安装Conda无特殊兼容问题,直接安装Linux通用版即可,用于隔离AI环境。

4.1 下载Conda安装包

选择合适的版本即可:conda下载地址

4.2 执行安装

建议利用-p指定安装地址

bash Miniconda3-py310_26.1.1-1-Linux-x86_64.sh -b -p /work/miniconda3

配置conda环境变量

vi /etc/profile

写入如下内容,需要替换为实际的安装路径

export PATH=/work/miniconda3/bin:$PATH

生效环境变量

source /etc/profile

4.3 验证Conda

安装完成后,执行下方命令,输出对应的conda版本即为成功

conda -V

在这里插入图片描述

五、高频踩坑总结

  1. nouveau未禁用导致驱动安装失败:必须严格执行黑名单+重启步骤,否则驱动编译报错
  2. CUDA版本不匹配:切勿安装高于nvidia-smi支持的CUDA版本
  3. 重复安装驱动冲突:安装CUDA时务必拒绝重复安装显卡驱动
  4. 服务器图形界面报错:安装驱动、CUDA时必须添加--no-opengl-libs参数
Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐