WSL2 Ubuntu cuda驱动问题解决和CUDA Toolkit安装
文章目录
- 参考文章
- 问题:nvidia-smi命令报错
- 方法一:复制 nvidia-smi 并赋予权限(推荐)
- 方法二:添加 WSL NVIDIA 路径到环境变量
- CUDA Toolkit安装
- 方法一:在 WSL2 中安装 CUDA Toolkit (推荐)
- 方案二:使用 Conda 安装 CUDA Toolkit (更简单)
参考文章
- WSL2执行nvidia-smi报错:Command ‘nvidia-smi‘ not found, but can be installed with - CSDN
问题:nvidia-smi命令报错
- 在 WSL Ubuntu 中执行
nvidia-smi命令报错Command 'nvidia-smi' not found,并且系统提示可以安装多个版本的nvidia-utils。这通常是因为 WSL2 环境下,NVIDIA 驱动已经随 Windows 主机安装,但 WSL 内部缺少nvidia-smi命令的快捷方式或环境变量未生效。 - 原理:WSL2 的 GPU 依赖 Windows 主机的 NVIDIA 驱动,Linux 端不需要独立安装驱动,只需将驱动提供的
nvidia-smi命令链接到系统可识别的路径即可。
方法一:复制 nvidia-smi 并赋予权限(推荐)
- 复制 NVIDIA SMI 可执行文件到系统 bin 目录
cp /usr/lib/wsl/lib/nvidia-smi /usr/bin/nvidia-smi - 赋予可执行权限
chmod ogu+x /usr/bin/nvidia-smi - 验证
nvidia-smi
(base) root@DESKTOP-96TPJ9I:/home/yang# nvidia-smi
Wed Oct 29 16:20:48 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.95.02 Driver Version: 581.42 CUDA Version: 13.0 |
+-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 3060 On | 00000000:04:00.0 On | N/A |
| 0% 48C P0 38W / 170W | 682MiB / 12288MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------++-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 33 G /Xwayland N/A |
+-----------------------------------------------------------------------------------------+
方法二:添加 WSL NVIDIA 路径到环境变量
如果方法一无效,可尝试添加 NVIDIA 驱动路径到环境变量:
echo 'export PATH=$PATH:/usr/lib/wsl/lib' >> ~/.bashrc
source ~/.bashrc
- 然后再次尝试
nvidia-smi。
CUDA Toolkit安装
方法一:在 WSL2 中安装 CUDA Toolkit (推荐)
- 推荐方案:采用 方案一,在 WSL2 中通过官方渠道安装完整的 CUDA Toolkit,这是最通用和最可靠的方法。安装后记得配置
CUDA_HOME环境变量。
-
访问 NVIDIA 官网下载页面:https://developer.nvidia.com/cuda-downloads
-
选择正确的选项:
- Operating System:
Linux - Architecture:
x86_64 - Distribution:
WSL-Ubuntu - Version:
2.0(或最新的 WSL 版本) - Installer Type:
deb (network)

- Operating System:
-
按照官网指示执行命令:网站会生成一系列命令,通常类似于:
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb sudo dpkg -i cuda-keyring_1.1-1_all.deb sudo apt-get update sudo apt-get -y install cuda-toolkit-13-0 -
配置环境变量:安装完成后,CUDA Toolkit 通常安装在
/usr/local/cuda。需要将nvcc的路径和CUDA_HOME变量添加到您的 shell 配置文件中(例如~/.bashrc)。
打开文件:vim ~/.bashrc在文件末尾添加以下两行:
export CUDA_HOME=/usr/local/cuda export PATH=$PATH:$CUDA_HOME/bin保存并退出(在
nano中是Ctrl+X,Y,Enter)。 -
使配置生效:
source ~/.bashrc -
验证安装:
nvcc --version
方案二:使用 Conda 安装 CUDA Toolkit (更简单)
- 使用 Conda 安装
cudatoolkit:在deepseek-ocr环境中,安装与您 PyTorch 版本匹配的cudatoolkit。conda install cudatoolkit=11.8 -c nvidia - 设置环境变量:Conda 安装后,
nvcc会在 Conda 环境的bin目录里。您仍然需要设置CUDA_HOME。# 找到你的conda环境路径 echo $CONDA_PREFIX # 输出会是类似 /root/miniconda3/envs/deepseek-ocr# 临时设置环境变量 export CUDA_HOME=$CONDA_PREFIX# 或者永久写入到 ~/.bashrc echo 'export CUDA_HOME=$CONDA_PREFIX' >> ~/.bashrc source ~/.bashrc - 重新安装 flash-attn:
pip install flash-attn==2.7.3 --no-build-isolation
