WSL2报错:nvidia-smi Command ‘nvidia-smi‘ not found, but can be installed with:

这里写自定义目录标题

找了很多方法

在社区找了很多方法,结果在b站评论区找到了一个方法给解决了
原本一开始有人说是驱动版本问题
我nvcc -V是ok的,但是nvidia-smi一直报错,Command ‘nvidia-smi’ not found, but can be installed with:

解决

cp /usr/lib/wsl/lib/nvidia-smi /usr/bin/nvidia-smi
chmod ogu+x /usr/bin/nvidia-smi
在wsl2中运行这两个语句,再输入nvidia-smi,成功了


分割线

回头会把这个文章的格式啥的做一下,现在先已自己工作为主。
上面是我4.20搞的,现在换了一台配置更好的电脑,如今又得重新配,发现配这个真的比较折磨,所以决定写清楚一点,这样的话我的这篇文章才不会耽误各位的时间,开源社区嘛,分享这种真的是有贡献的。
我建议是把我的这个看完了,在对着做,中间有一些错误,但是我依然保留了,所以如果直接对着做会很难受。

WSL2部署

首先是我的开始,首先要在windows里面下载WSL2,已经搞忘记我上一个配置这样参考的博客了,昨天我跟着这个来的:
https://blog.csdn.net/eastking0530/article/details/126613992
下面的这个博客好像是用命令的,但是我因为之前就用的微软商店啊这种,这两我都有参考,
https://blog.csdn.net/iwanvan/article/details/122119595
还很详细。
关于这方面WSL2的部署,bilibili也有个专栏和视频,那个跟着做也不错:
https://www.bilibili.com/read/cv16616792
https://www.bilibili.com/video/BV1n14y1x7Y7/?spm_id_from=333.880.my_history.page.click&vd_source=cc97774375ca5177485d3840a0bb9b31
这个一个是文章,一个是视频,虽然在显卡部署方面我感觉光凭这个很难完好的运行,细节没有很清楚,但是WSL2跟着做就对了,很详细。

那么现在我们可以通过ubuntu应用或者powershell开始我们在windows上的linux命令了。
可以参考bilibili文章或者别的文章,把apt源改成国内的。
但是这个文章第一句话就有问题,bat应该是bak
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
然后:使用文本编辑器(如nano或vim)打开apt源列表文件
sudo nano /etc/apt/sources.list
最后才是把底下的那些话弄进去。但是b站复制也很烦有尾缀。我记得我这里分享的文章有一篇写的很好。
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse、
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

搞到最后,然后右键就可以粘贴,然后ctrl+X然后输入Y,回车,回车
sudo apt-get update
sudo apt-get install build-essential在这里插入图片描述

然后是安装CUDA,因为我本机电脑是CUDA12.0
所以我是根据这篇文章来的的:
https://cloud.tencent.com/developer/article/2269993
在这里插入图片描述
虽然这个CUDA版本可能跟各位有不一样,但是可以百度搜一下下载对应的cuda版本就OK了,这个时候nvcc -V就可以用了。
在这里插入图片描述
但是此时,wsl2里面的nvidia-smi命令还是这样:

在这里插入图片描述
我们要装对应的驱动,根据我的回忆,是只需要在wsl2装一个CUDA toolkit,CUDA Toolkit是NVIDIA的CUDA工具包,包含了CUDA的全部工具。因为英伟达已经有专对于wsl2的驱动,只需要本机有对应工具包,那么我们在WSL2就可以运行,所以我们在WSL2只要装CUDA toolkit 。如果没装,那么就会导致这个时候我一开始的那个命令是找不到文件,cp /usr/lib/wsl/lib/nvidia-smi /usr/bin/nvidia-smi,因为没驱动的话,是没有这个的:nvidia-smi,
地址在这里(好像要科学工具)
https://developer.nvidia.com/cuda-downloads(最新版本)
https://developer.nvidia.com/cuda-toolkit-archive(历史版本)
打开是这样:

最新版本
历史版本
具体下载的话,要看对应的表:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
看看他这个工具最低支持的驱动版本,最低的一定不能高于你的电脑驱动。
这里安装我也参考的这个:https://www.bilibili.com/read/cv16616792
在官网里面:https://developer.nvidia.com/CUDA-TOOLKIT-ARCHIVE找到对应的,然后执行这个命令:
wget https://developer.download.nvidia.com/compute/cuda/12.0.0/local_installers/cuda_12.0.0_525.60.13_linux.run
sudo sh cuda_12.0.0_525.60.13_linux.run
然后有一个这个:
在这里插入图片描述
离谱的是我印象中没这个,有着翻车的感觉。除了驱动和后面的核心全安了。然后是漫长的等待。
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/4c9595f90e684c3aa4c8b8c6d303b8c1.png#pic_center

大意是,说我安装不完整啊那些警示。
好翻车了,理一下思路,我现在创建了一个WSL2,这个我安装成功了,
然后我安装anaconda,也成功了,
然后我安装了CUDA,安装成功了,nvcc -V可以生成,
但是目前遇见了问题:我使用不了nvidia-smi
在这里插入图片描述

好,找到问题了原来是我一直是wsl一代,很好!
关于怎么看wsl版本呢
在cmd或者powershell里面输入这个命令就可以了:
wsl -l -v
在这里插入图片描述
如果很不巧,你一开始是wsl1,那么version下面会是1,也有解决办法,不用重启电脑,根据这两篇文章来就ok了,首先是升级:https://blog.csdn.net/weixin_44121966/article/details/122815547
升级看上面这篇就行,然后需要下载一个可运行文件,里面讲的很清楚。
升级完了很容易遇见这样的错误:参考的对象类型不支持尝试的操作
看这篇就行了:https://blog.csdn.net/fangye945a/article/details/123832623

搞完之后我又回来了:
在这里插入图片描述
这次发现,居然nvidia-smi是可以用的,那么或许一开始我不能用是否就是因为我是wsl1,真的很无语。
那么评论区的老哥没文件,很有可能就是wsl1的原因,因为我这次找了,原始回答的路径下面就是有这个文件的:
在这里插入图片描述
那么我就差安装cuda了,
再来一遍:https://developer.nvidia.com/cuda-toolkit-archive在这里面找对应的版本,然后直接在里面复制命令就好了。之前在别人博客复制的跟官网的是一样的,弄完之后就配置一下环境:
在这里插入图片描述
具体的在之前发的那个博客里面,https://cloud.tencent.com/developer/article/2269993
把12.0改成你的版本就ok了。
然后现在不管是nvidia-smi还是nvcc -V都可以了。

总结一下显卡这方面的安装,只需要按照cuda for wsl2就好了,nvidia-smi不能运行,大概率是wsl不是二代或者win的版本不支持或者本机机器驱动nvidia driver不支持。升级一下就好了,我是win10。
可以参考这个博客
https://blog.csdn.net/wdz502425575/article/details/123658606
然后这篇博客效率很高,我是一开始走错路了,
https://blog.csdn.net/weixin_42187164/article/details/126816848

安装anconda和pytorch(anaconda是管理的,比较推荐安装,pytorch按需安装)
anaconda参考的这个教程,保姆级:https://blog.csdn.net/weixin_45509406/article/details/128752457
输入conda -V就可以看看是不是成功了。
在这里插入图片描述
pytorch
对应版本在这里面找:
https://pytorch.org/get-started/locally/
具体安装的话:
以下是anaconda的基本命令:
在这里插入图片描述
conda create -n pytorch python=3.10
conda activate pytorch
如果出这个问题了:
在这里插入图片描述
运行conda init bash,然后重新打开wsl2,就可以了。
在激活环境之后:
在这里插入图片描述
运行这个命令就好了,当然,你得找对应的版本。
然后进入python环境

在这里插入图片描述
import torch
(检查PyTorch是否可以使用GPU)
print(torch.cuda.is_available())

(如果有多个GPU,打印出所有GPU的编号)
print(torch.cuda.device_count())

(打印出当前选中的GPU)
print(torch.cuda.current_device())

(打印出当前GPU的名称)
print(torch.cuda.get_device_name(torch.cuda.current_device()))

如果上面的代码能够正常运行,并且打印出了你的GPU的相关信息,那么你的PyTorch就能够正确地使用你的GPU了。

环境配完了,终于!

总结一下,我这篇博客对比其他博客,废话较多,而且不简洁,但是旁征博引,胜在很菜,小白能共情。哈哈哈

  • 27
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 14
    评论
当你在Ubuntu 16.04上运行nvidia-smi命令时出现了“not found”错误,这可能是因为无法与NVIDIA驱动程序进行通信。这个问题可能与VMware虚拟机上的CUDA/CUDNN不兼容有关。 为了解决这个问题,你可以按照以下步骤尝试修复: 1. 在WSL2中运行以下两个命令: ``` cp /usr/lib/wsl/lib/nvidia-smi /usr/bin/nvidia-smi chmod ogu+x /usr/bin/nvidia-smi ``` 这将复制nvidia-smi文件并将其设置为可执行文件。 2. 然后,尝试再次运行nvidia-smi命令,看看问题是否解决了。 如果问题仍然存在,你可以尝试重新生成对应的NVIDIA驱动模块。首先,确定当前驱动版本,可以通过运行以下命令获取: ``` nvidia-smi ``` 在输出结果的最后一行,你将看到类似于“nvidia-418-418.56”的驱动版本。然后,使用以下命令重新生成驱动模块: ``` sudo dkms install -m nvidia -v 418-418.56 ``` 请确保将命令中的版本号替换为你实际使用的驱动版本。 通过以上步骤,你应该能够解决nvidia-smi命令未找到的问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Linux nvidia 报错(1):nvidia-smi: command not found](https://blog.csdn.net/Robin_Pi/article/details/109473338)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [WSL2报错nvidia-smi Commandnvidia-smi‘ not found, but can be installed with:](https://blog.csdn.net/whu_wmx/article/details/130268912)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值