maxim-MAX78000-windows10-wsl2-Ubuntu20.04-pyenv+pytorch+ai8x环境搭建

请配合官方教程一起看GitHub - MaximIntegratedAI/ai8x-training: Model Training for ADI's MAX78000 and MAX78002 AI Devices文章中的链接最好也点进去都看一下,基本就没啥问题

 

根据自己实际使用的环境参考教程搭建

直接安装 WSL2 在非 C 盘
参考Manual installation steps for older versions of WSL | Microsoft Learn

启用 WSL 功能
首先需要启用 WSL 相关的 windows 功能,win+R 输入 appwiz.cpl 回车 -> 启用或关闭 Windows 功能,然后启用下列三个功能:

前提条件
win11 是默认支持 WSL2 的,如果是 win10 请参考 检查运行 WSL2 的要求

设置默认安装 WSL2
为了安装 WSL2,需要先安装 WSL2 的内核更新包:适用于 x64 计算机的 WSL2 Linux 内核更新包
下载这个 .msi 文件之后,双击安装可能会因为权限问题导致安装失败,参考 安装程序出现2502、2503错误解决方法

打开“命令提示符(管理员)”
在“命令提示符(管理员)”中输入"msiexec /package " +“你将要安装的程序的完整路径及程序名”(注意空格)
然后按回车键,安装程序就会自动启动
此外,你可能还需要使用命令将 WSL2 设置为默认版本:

wsl --set-default-version 2


但 win11 似乎默认就是安装 wsl2 ,我没有手动设置,直接安装的。

安装在非 C 盘
至此,所有的准备工作都OK了,从官网页面可以下载想要安装的 Linux 发行版:下载发行版

以我下载的 Ubuntu 22.04 LTS 为例,把下载后得到的 .appx 文件放到 D 盘目录下,然后修改后缀名为 zip ,即 Ubuntu2204-220620.appx -> Ubuntu2204-220620.zip

然后把它解压,得到一个文件夹,如果文件夹中有 ubuntu****.exe ,那就可以了;但是 22.04 版本解压后应该是有若干个 appx ,这时候根据自己的平台把 Ubuntu_2204.0.10.0_x64.appx 或 Ubuntu_2204.0.10.0_ARM64.appx 修改后缀为 zip,然后再一次解压,这一次就可以得到 .exe 了。

双击 ubuntu2204.exe 开始安装,如果出现错误,那么大概率是没有更新 WSL2 的内核,回到前面一节 “设置默认安装 WSL2” 更新内核。

安装时根据向导进行相应的设置即可。不过注意在设置用户名时只能设置小写字母、数字和下划线(不能使用大写字母),如果不符合要求是无法选择 [done] 的。

至此我们已经安装好了 WSL2,在 CMD 中使用命令可以检查我们安装的版本:

wsl -l -v
PS C:\Users\25245> wsl -l -v
  NAME      STATE           VERSION
* Ubuntu    Running         2

在wsl窗口中更换软件源

手动替换
直接编辑/etc/apt/sources.list文件(需要使用 sudo):
将原文件做备份:

sudo cp /etc/apt/sources.list /etc/apt/sources_copy.list

打开文件:

sudo vim /etc/apt/sources.list

将文件中的内容删除,将镜像源复制到里面。镜像源参考下一章节ubuntu镜像源。

ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

进去后直接按d键删掉全部的,再按i键进入编辑模式,粘贴进去,按esc键退出,再输入英文冒号和wq:wq,再点击回车即可

执行命令

sudo apt-get update
sudo apt-get upgrade

如果报错,请参考

apt命令报证书错误的解决方法------- Certificate verification failed: The certificate is NOT trusted._Chaowanq的博客-CSDN博客

更新好后,在windows CMD中输入

更新到最新版本,我这里是内核版本: 5.10.102.1

wsl --update

关闭wsl2

wsl --shutdown

只需要安装Windows中的NVIDIA显卡驱动就可以,在Windows下已经包含了CUDA的驱动,在wsl2中只需要安装cudatoolkit就可以

官方驱动 | NVIDIA

安装好重启电脑,在WindowsCMD中输入

nvidia-smi

 输入wsl,启动ubuntu

接下来,安装远程gui界面,参考

Windows10/11上安装图形用户界面 (GUI)并在 WSL 2 中运行 Ubuntu 22.04_哔哩哔哩_bilibili

!安装GUI命令:
sudo apt update && sudo apt -y upgrade
sudo apt-get purge xrdp
sudo apt install -y xrdp
sudo apt install -y xfce4
sudo apt install -y xfce4-goodies

sudo cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.bak
sudo sed -i 's/3389/3389/g' /etc/xrdp/xrdp.ini
sudo sed -i 's/max_bpp=32/#max_bpp=32\nmax_bpp=128/g' /etc/xrdp/xrdp.ini
sudo sed -i 's/xserverbpp=24/#xserverbpp=24\nxserverbpp=128/g' /etc/xrdp/xrdp.ini
echo xfce4-session > ~/.xsession

sudo nano /etc/xrdp/startwm.sh
!以下这两行注释掉:
#test -x /etc/X11/Xsession && exec /etc/X11/Xsession
#exec /bin/sh /etc/X11/Xsession

!添加这一行:
# xfce
startxfce4

启动gui界面
sudo /etc/init.d/xrdp start

输入命令ip addr
获取WSL2的IP地址
在windows中,打开远程桌面连接,输入IP地址,即可连接成功

参考

wsl安装xrdp(可视化界面并远程),解决闪退、黑屏_daboluo520的博客-CSDN博客_xrdp闪退

 解决WSL Ubuntu20.4+xfce4 图形界面一段时间后黑屏_惰性固体的博客-CSDN博客_xfce4黑屏

禁止xfce4黑屏
我在ubuntu server上安装了xfce,可是每隔十分钟电脑就会黑屏。安装了xfce自带的电源管理程序。貌似不起作用。后来从网上找到如下方法:

修改/etc/X11/xorg.conf配置文件,如果找不到此文件可自行建立。

增加一个 Section “ServerFlags”,包含的内容如下:

Section "ServerFlags"
  
    Option  "BlankTime"  "0" 
  
    Option  "StandbyTime"  "0"
  
    Option  "SuspendTime"  "0"
  
    Option  "OffTime"  "0"

EndSection
注:你也可以将后面的0设置为你所希望的分钟数。

如果还是不起作用,还可以另外增加Section “Monitor”,反正我没做这一步已经起作用了。内容如下:

Section "Monitor"
    Option "DPMS" "false"
EndSection
配置 WSL2 使用 Windows 网络代理
通过下面脚本可以便捷实现网络代理的设置:./proxyrc.sh set 设置代理,./proxyrc.sh unset 取消代理(以这种方式设置代理只是临时的,重新进入 WSL 需要再一次设置)。

#!/bin/sh
# 获取 windows 主机 IP
hostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')
wslip=$(hostname -I | awk '{print $1}')
# 代理端口一般是 7890,注意自己去代理软件确认
port="7890"

PROXY_HTTP="http://${hostip}:${port}"

set_proxy(){
    export http_proxy="${PROXY_HTTP}"
    export HTTP_PROXY="${PROXY_HTTP}"

    export https_proxy="${PROXY_HTTP}"
    export HTTPS_proxy="${PROXY_HTTP}"

    export ALL_PROXY="${PROXY_SOCKS5}"
    export all_proxy=${PROXY_SOCKS5}
}

unset_proxy(){
    unset http_proxy
    unset HTTP_PROXY
    unset https_proxy
    unset HTTPS_PROXY
    unset ALL_PROXY
    unset all_proxy
}

test_setting(){
    echo "Host ip:" ${hostip}
    echo "WSL ip:" ${wslip}
    echo "Current proxy:" $https_proxy
}

if [ "$1" = "set" ]
then
    set_proxy
elif [ "$1" = "unset" ]
then
    unset_proxy
elif [ "$1" = "test" ]
then
    test_setting
else
    echo "Unsupported arguments."
fi

安装火狐浏览器

sudo apt-get install firefox

更新git

1、查看git版本

git --version

2、升级Git

sudo apt update # 更新源 
sudo apt install software-properties-common # 安装 PPA 需要的依赖 
sudo add-apt-repository ppa:git-core/ppa # 向 PPA 中添加 git 的软件源 
sudo apt-get update 
sudo apt-get install git

安装NVIDIA Toolkit

CUDA Toolkit 11.8 Downloads | NVIDIA Developer

历史版本可以在网址下面找到,不需要安装跟自己windows上的cuda对应的版本,但是CUDA Toolkit 版本应该要与driver版本匹配Release Notes :: CUDA Toolkit Documentation

我这里安装的是11.3版本的

安装pyenv

Ubuntu中安装pyenv和pyenv-virtualenv

使用pyenv安装python

pyenv install 3.8.11

安装失败/下载不了,参考pyenv进行python版本本地安装_轮子学长的博客-CSDN博客

安装pyenv及利用pyevn安装python - 立体风 - 博客园

如果还不行,有可能是网络问题/换个网或者时间再试一下

配置git 环境

如果之前未配置本地 git 环境,请添加以下命令来配置电子邮件和名称。电子邮件必须与 GitHub 匹配(包括大写/小写):

$ git config --global user.email "first.last@example.com"
$ git config --global user.name "First Last"
接下来进入正题

$ cd <your/project>
$ git clone --recursive https://github.com/MaximIntegratedAI/ai8x-training.git
$ git clone --recursive https://github.com/MaximIntegratedAI/ai8x-synthesis.git

创建虚拟环境,执行以下操作:

$ cd ai8x-training

如果使用 pyenv,请将本地目录设置为使用 Python 3.8.11。

$ pyenv local 3.8.11

在所有情况下,请验证是否使用了 Python 的 3.8.x 版本:

$ python --version
Python 3.8.11

如果这没有返回版本 3.8.x,请安装并初始化pyenv

然后继续执行以下操作:

$ python -m venv venv --prompt ai8x-training

如果此命令返回类似于“虚拟环境未成功创建,因为 ensurepip 不可用”的错误消息,请安装并初始化pyenv

在 macOS 和 Linux(包括 WSL2)上,使用

$ source venv/bin/activate

然后继续

(ai8x-training) $ pip3 install -U pip wheel setuptools

下一步因系统是否使用 CUDA 11.x 而异。

对于 Linux 上的 CUDA 11.x,包括 WSL2:

(ai8x-training) $ pip3 install -r requirements-cu11.txt
//注意这条命令已经包含了Pytorch的环境,默认是1.8.1+cuda111版本的

参考

win11 安装 WSL2 在非 C 盘及配置(图形界面+代理)_热带鱼啊的博客-CSDN博客_wsl2 图形界面
wsl2和 Windows 如何相互访问文件?_尼888888的博客-CSDN博客_wsl2访问windows的文件

win10/11下wsl2安装gpu版的pytorch(避坑指南)_Challow的博客-CSDN博客_wsl2 安装gpu驱动

win11 使用wsl2安装pytorch 梳理_皮仔--的博客-CSDN博客_wsl安装pytorch


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: Docker Desktop 是一款用于运行和管理容器化应用的工具,而 Ubuntu 20.04 WSL 是 Windows 子系统的一种,可以在 Windows 上运行 Ubuntu Linux,让开发者可以在 Windows 环境中进行开发和测试。 在使用 Docker Desktop 时,可以与 Ubuntu 20.04 WSL 进行集成,以便在 Windows 环境下更方便地使用 Docker。集成后,可以在 Ubuntu 20.04 WSL 中安装和运行 Docker Engine,与在常规的 Ubuntu 环境中没有太大的差别。 然而,有时可能会遇到"Distribution Ubuntu-20.04 unexpec"的错误。这通常是由于某些原因引起的不可预期的错误或问题。这可能是由于操作系统或软件的不稳定性、版本冲突、配置错误、网络问题等引起的。 要解决这个问题,有几个步骤可以尝试: 1. 检查 Docker Desktop 和 Ubuntu 20.04 WSL 的版本是否兼容,确保使用了最新的版本。 2. 检查系统和软件的配置是否正确,确保没有出现冲突或错误的设置。 3. 检查网络连接是否正常,确保能够访问互联网和 Docker 仓库。 4. 尝试重新安装或更新 Docker Desktop 和 Ubuntu 20.04 WSL,以修复可能的损坏或错误。 如果问题仍然存在,可以尝试搜索相关的错误信息或寻求帮助,以找到更具体的解决方法。同时,也可以尝试使用其他类似的工具或方法来满足容器化应用的需求。 ### 回答2: 当Docker Desktop与Ubuntu 20.04 WSL集成时出现异常,可能有几种可能原因和解决方法。 首先,确保你的Docker Desktop和WSL都是最新版本,并且已经正确安装和配置。 如果你的Docker Desktop和WSL版本不兼容,可能会导致集成过程中出现异常。请检查并更新它们。 其次,检查Docker Desktop的设置是否正确。进入Docker Desktop的设置菜单,确保“WSL Integration”选项已启用,并选择你要与WSL集成的Ubuntu 20.04版本。 如果集成过程中仍然存在问题,可以尝试重新安装Docker Desktop和WSL。首先卸载Docker Desktop和WSL,然后重新安装它们。确保按照官方文档上的步骤进行操作。 另外,你还可以尝试重启计算机,有时候重启可以帮助解决一些集成问题。 如果以上方法仍然无法解决问题,建议查看Docker Desktop和WSL的官方文档,寻找可能的故障排除方法或寻求技术支持。 总之,当Docker Desktop与Ubuntu 20.04 WSL集成过程中出现异常时,可以通过确保软件版本兼容、检查设置并重新安装软件来解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值