配置WSL-windows系统保姆级教程:还在安装虚拟机?快来试试WSL!轻松使用Linux在Windows上开发和运行应用。

坦帕湾的海盗 2024-09-02 10:37:02 阅读 53

一:安装wsl

1.安装wsl1

(1)启用“适用于 Linux 的 Windows 子系统”可选功能

在【设置 -> 更新与安全->开发者选项】中开启【开发人员模式】

在【程序和功能 -> 启用或关闭 Windows 功能】中勾选【适用于 Linux 的 Windows 子系统】

(2)重启电脑

(3)安装 Linux 发行版,如 Ubuntu

在 Microsoft Store 中下载并安装需要的 Linux 发行版,建议安装老一点的版本(例如Ubuntu 22.04)

(4)启动 Linux 子系统

2.升级到wsl2

(1)开启“虚拟机平台”可选功能

在之前的基础上,勾选【虚拟机平台】

注:在上述操作之前,首先得到bios中开启虚拟化,这里以华硕b550m重炮手与AMDCPU为例,关机重启后,出现品牌图标时按F2进入bios,然后再点击【高级】,再点击【CPU Configuration】,再点击【SVM Mode】,将【SVM Mode】设置更改为Enabled。最后重新启动电脑。

(2)重启电脑

(3)下载 Linux 内核更新包

下载最新包:适用于 x64 计算机的 WSL Linux 内核更新包,然后双击运行安装。

(4)设置 WSL 版本

打开Windows下的PowerShell,输入wsl -l -v 查看已安装的Linux分发版的wsl版本,以我下载的Ubuntu-22.04为例,输入wsl --set-version Ubuntu-22.04 2

运行成功可以看到以上结果。

说明:若要将分发版设置为受某一 WSL 版本支持,请运行:

wsl --set-version  <distribution name>  <versionNumber>

请确保将  替换为你的分发版的实际名称,并将  替换为数字“1”或“2”。 可以随时更改回 WSL 1,方法是运行与上面相同的命令,但将“2”替换为“1”。

以上即已完成了整个wsl的安装。

参考网址:

Win10 系统安装 Linux 子系统教程(WSL2 + Ubuntu 20.04 + Gnome 桌面 )_wsl安装-CSDN博客

二:配置wsl中的环境

1.安装CUDA Toolkit

NVIDIA Toolkit地址CUDA Toolkit 12.3 Downloads | NVIDIA Developer

这里的CUDA Toolkit 匹配与否查看这里CUDA 12.3 Release Notes (nvidia.com)

这里的坑在于要安装wsl-ubuntu而不是 ubuntu 

wsl 命令行按照图示的指令运行就行。需要一条一条的复制进wsl中运行

例:

wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin

sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600

wget https://developer.download.nvidia.com/compute/cuda/12.0.1/local_installers/cuda-repo-wsl-ubuntu-12-0-local_12.0.1-1_amd64.deb

sudo dpkg -i cuda-repo-wsl-ubuntu-12-0-local_12.0.1-1_amd64.deb

sudo cp /var/cuda-repo-wsl-ubuntu-12-0-local/cuda-*-keyring.gpg /usr/share/keyrings/

sudo apt-get update

sudo apt-get -y install cuda

安装完成后nvcc -V 应该是显示不出来版本的。需要在~/.bashrc文件下做环境变量的配置。即在wsl中输入vim ~/.bashrc ,在最下面添加这几行。

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

注:添加方法为,输入i进入vim的INSERT模式,将上述两行代码复制到文件最后推出vim模式,即先按esc退出INSERT模式,然后输入:wq,就可以保存并退出了。

刷新环境 source ~/.bashrc,运行nvcc -V会有CUDA版本的输出。

这个时候 CUDA Toolkit 就应该已经安装好了。

参考地址:

win10/11下wsl2安装gpu版的pytorch(避坑指南) - 知乎 (zhihu.com)

2.在wsl中安装miniconda

在wsl中输入以下指令:

(1)执行命令下载miniconda安装包

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

(2)运行命令来执行安装脚本

bash Miniconda3-latest-Linux-x86_64.sh

(3)安装完成后重新加载环境变量

source ~/.bashrc

(4)输入命令验证是否成功安装miniconda

conda --version

参考地址:

wsl下载conda - CSDN文库

3.在conda环境中安装pytorch

(1)创建conda环境

首先先在wsl中使用conda创建一个新环境,进入新环境中进行pytorch的安装。

注:前面的cuda是没下载conda之前安装的,即安装在wsl中的,所以新环境中的pytorch也需正常下载cuda。

(2)安装pytorch

进入pytorch官网(PyTorch),根据自己需要的版本选择conda语句。

例如:conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

注:这是官方下载源,也可以换成清华源,即将-c 后面的部分改成清华源地址,注意linux与win系统的区别。

conda install pytorch torchvision torchaudio pytorch-cuda=12.0 -c pytorch -c Index of /anaconda/cloud/pytorch/linux-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

清华源地址:Index of /anaconda/cloud/pytorch/linux-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

4.注意事项

1.

(1)

打开ubuntu出现这个问题,显示没有在bios中打开虚拟化,但是电脑是已经打开了虚拟化的。

去网上找,有人说是安装的wsl2有问题,改成wsl1就行了

即在用管理员身份打开powershell,执行以下指令。

wsl --set-default-version 1

经过尝试确实解决了问题

(2)

在网上找,得到解决方案:下载安装适用于 x64 计算机的最新 WSL2 Linux 内核更新包

下载链接:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

安装好后再次启动就可以解决

2.

3.

出现这个问题的原因为pytorch为cpu版本



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。