这是我的Ubuntu版本:
PS C:\WINDOWS\system32> wsl --list --verbose
NAME STATE VERSION
* Ubuntu-22.04 Running 2
这是我的gcc版本:
zhao@ZhaoYH:~$ gcc --version
gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
输入之后的结果是这样nvidia-smi
:
zhao@DESKTOP-CBA46OT:~$ nvidia-smi
Sat Sep 16 08:57:03 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 530.50 Driver Version: 531.79 CUDA Version: 12.1 |
|-----------------------------------------+----------------------+----------------------+
| 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 4060 L... On | 00000000:01:00.0 Off | N/A |
| N/A 34C P8 1W / N/A| 10MiB / 8188MiB | 0% Default |
| | | N/A |
+-----------------------------------------+----------------------+----------------------+
+---------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=======================================================================================|
| 0 N/A N/A 23 G /Xwayland N/A |
+---------------------------------------------------------------------------------------+
当我跟随Nvidia 的 CUDA 安装教程,当我执行到命令的第二行的时候,出现了错误:
wget https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.run
sudo sh cuda_12.2.2_535.104.05_linux.run
zhao@DESKTOP-CBA46OT:~$ sudo sh cuda_12.2.2_535.104.05_linux.run
[sudo] password for zhao:
sh: 1: dkms: not found
Installation failed. See log at /var/log/cuda-installer.log for details.
zhao@DESKTOP-CBA46OT:~$ cat /var/log/cuda-installer.log
[INFO]: Driver not installed.
[INFO]: Checking compiler version...
[INFO]: gcc location: /usr/bin/gcc
[INFO]: gcc version: gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)
[INFO]: Initializing menu
[INFO]: Disabling driver option for WSL install
[INFO]: nvidia-fs.setKOVersion(2.17.5)
[INFO]: Setup complete
[INFO]: Installing: CUDA Demo Suite 12.2
[WARNING]: Unable to create .pc files, permission denied at /usr/lib/pkgconfig/!
[WARNING]: Cannot find manpages to install.
[INFO]: Installing: CUDA Documentation 12.2
[WARNING]: Unable to create .pc files, permission denied at /usr/lib/pkgconfig/!
[WARNING]: Cannot find manpages to install.
[INFO]: Installing: Kernel Objects
[INFO]: cudaItem::install - kernelobjects
[INFO]: Able to write to /usr/local/kernelobjects/
[INFO]: Installing: nvidia-fs
[INFO]: cudaItem::install - kernelobjects
[INFO]: dkms not found
[INFO]: DKMS is not installed,skip to static kernel module install
[INFO]: previous version of nvidia-fs is not installed, nvidia-fs version: 2.17.5 will be installed.
[INFO]: getting mofed Status
[INFO]: installation status shows that mofed is not installed,please install mofed before continuing nvidia_fs install.
[ERROR]: Install of nvidia-fs failed, quitting
我第一次安装成功了,但后来文件~/.bashrc
损坏了。所以我重新安装了 Ubuntu。我尝试了网上的各种方法来彻底清除残留的 CUDA 和 Nvidia 文件,但仍然出现相同的错误。我甚至重新安装了 Windows 11,但错误仍然没有消失。我去 Nvidia 官方论坛寻求帮助,但没有人回答。
一个重要的信息是,我按照其他方法尝试查看,/var/log/nvidia-installer.log
但文件根本不存在,/var/log/nvidia/
是一个空文件夹
答案1
这似乎是你的主要问题。你安装了 Ubuntu 的 CUDA 工具包,而你应该安装专门用于WSL-Ubuntu(列表中的下一个)。
常规 CUDA 工具包包括UbuntuGPU 驱动程序,不是您需要什么。请参阅实际教程:
一旦在系统上安装了 Windows NVIDIA GPU 驱动程序,CUDA 便可在 WSL 2 中使用。安装在 Windows 主机上的 CUDA 驱动程序将在 WSL 2 中存根为
libcuda.so
,因此用户不得在 WSL 2 中安装任何 NVIDIA GPU Linux 驱动程序。这里必须非常小心,因为默认的 CUDA 工具包附带一个驱动程序,并且很容易用默认安装覆盖 WSL 2 NVIDIA 驱动程序。
既然你已经这样做了,那么最好的办法就是清除 WSL2 下的 Ubuntu 并重新安装。据我所知,Nvidia 没有提供任何关于在安装错误的 CUDA 工具包后从该“不良状态”中恢复的说明。
因为听起来你刚刚重新安装,所以我要认为您没有任何文件需要备份,但如果您需要,请确保您已经备份,因为以下内容将清除所有数据和配置来自 WSL2 中的 Ubuntu。没有确认或恢复。
从 PowerShell:
wsl --shutdown
wsl --unregister Ubuntu-22.04
ubuntu2204.exe
最后一行将重新运行安装程序,要求您设置用户名和密码。完成后,照常进行:
sudo apt update && sudo apt upgrade -y
然后按照指示小心地 ;-)
请注意,下载页面上有三个软件包选项。使用这些.deb
版本通常是“最安全的”,但考虑到我们已经从 Nvidia 安装的本机代码,我认为我们可以信任 runfile ( .run
) 版本。
其中一个缺点(我知道)是,.deb
几周前我上次使用该方法安装时,它仍然没有nvcc
正确添加到路径中。您可以手动执行此操作,但确实.run
正确设置了必要的环境变量。
答案2
我发现问题了,安装CUDA的时候,不是取消,而是选了叉,所以一直取消CUDA工具包,导致出现很多错误。