手工在非系统盘安装WSL(Ubuntu)

通过在系统中修改配置:系统->存储->更改新内容的保存位置,然后把“新的应用将保存到”的值修改为D盘。普通的应用安装没有问题,但是WSL系统安装的时候提示必须安装到系统盘。所以只能采用后面的手动方式安装WSL。
参考:How-to: Installing WSL manually on a non-system drive

因为我的Windows已经升级到了1909,其他的版本没有测试

Ubuntu 19.04 & 19.10 & 20.04

https://wiki.ubuntu.com/WSL下载对应版本的rootfs
我下载的是ubuntu20.04,注意文件名中应该含有“wsl”
《手工在非系统盘安装WSL(Ubuntu)》
然后以管理员身份运行powershell,切换到文件所在路径,运行命令:
wsl --import <DistributionName> <InstallLocation> <FileName>
DistributionName:子系统的名字,因为系统可以有多个wsl子系统,所以需要给他们起个名字;
InstallLocation:安装路径,wsl会把相应的文件安装到这个目录
FileName:下载的文件名字
如果要运行对应的wsl:
wsl -d DistributionName

Ubuntu 16.04 & 18.04

首先以管理员身份运行powershell

#启用WSL
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

#创建目录
New-Item D:\WSL -ItemType Directory
Set-Location D:\WSL

#下载安装程序,这个过程比较慢,要多等一段时间
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx -UseBasicParsing
Rename-Item .\Ubuntu.appx Ubuntu1604.zip
Expand-Archive .\Ubuntu1604.zip -Verbose

#运行程序
cd Ubuntu1604
.\ubuntu1604.exe

剩下的过程就和从app store中安装一样了。

重装

当系统需要重装的话,把整个目录删除,重新按照前面的步骤安装即可。运行程序”ubuntu.exe”后,有可能出错0x80070040,只要再执行”wslconfig /u Ubuntu”,重新尝试即可。

docker安装

在WSL中安装docker参考:Setting Up Docker for Windows and WSL to Work lawlessly
在WSL2中安装docker已经可以访问GPU了,参考:https://docs.nvidia.com/cuda/wsl-user-guide/index.html

在WSL中按照官方教程安装docker,

echo "export DOCKER_HOST=tcp://127.0.0.1:2357" | tee >> ~/.bashrc
source ~/.bashrc

在windows中按照官方教程安装docker for windows,然后在settings->General中勾选“Expose daemon on tcp://localhost:2357 without TLS”选项。
docker for windows默认是安装到系统盘的,如果有其他空间更大的非系统盘,别忘了设置镜像存储的路径到非系统盘。

    原文作者:fleaxin
    原文地址: https://blog.csdn.net/fleaxin/article/details/88587081
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞