启用WSL
VirtualMachinePlatform是WSL2依赖功能,需要系统支持(build 18917+),硬件支持VM功能并开启,安装完成后要重启计算机。
1
2
| Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
|
升级WSL到WSL2
1
2
3
| wsl --set-version ubuntu 2 #设置为1则降级
wsl --set-default-version 2 #设置默认版本
wsl -l -v #显示已安装的列表
|
文件读写权限配置
修改/etc/wsl.conf添加如下内容
1
2
3
4
5
6
7
8
| [automount]
enabled=true
root="/mnt/"
options="metadata,uid=1000,gid=1000,umask=22,fmask=111"
mountFsTab=true
[network]
generateHosts=true
generateResolvConf=true
|
修改源为阿里云镜像
1
2
3
4
5
6
| sudo vim /etc/apt/sources.list
#替换成阿里云镜像
:%s/security.ubuntu/mirrors.aliyun/g
:%s/archive.ubuntu/mirrors.aliyun/g
sudo apt update && sudo apt upgrade -y
|
关闭git文件模式,解决wsl与windows上一边操作后,另一边git提示有文件修改问题。
1
2
| git config core.filemode false
git config core.autocrlf true #如果windows上也配置了这个选项,则不建议关闭。
|
配置WSL2虚拟机内存与处理器数量
保存.wslconfig在用户目录下,Build 19041以上版本有效
1
2
3
| [wsl2]
memory=4GB
processors=2
|
Linux加载WSL VDHX
1
2
3
4
5
| sudo apt install libguestfs-tools #ubuntu
sudo yum install libguestfs-tools #centos
sudo virt-list-filesystems /path/to/vhdx
sudo guestmount -a /path/to/vhdx -m /dev/xxxx -r /path/to/mountpoint -o allow_other
|
VDHX扩容
- 使用wsl –shutdown关闭所有WSL实例
- 通过完成以下命令调整 WSL 2 VHDX 的大小:
1
2
3
4
5
| diskpart
list vdisk #如果这里未列出相应的虚拟磁盘,使用第5步查找
Select vdisk file="<pathToVHD>"
expand vdisk maximum="<sizeInMegaBytes>"
#sizeInMegaBytes为更改后的大小,单位MB
|
- 启动 WSL 分发版
- 通过从 Linux 分发版命令行运行以下命令,让 WSL 知道它可以扩展其文件系统的大小:
1
2
3
| sudo mount -t devtmpfs none /dev
mount | grep ext4
sudo resize2fs /dev/sdXX
|
找到 WSL 2 安装使用的 VHDX 文件
a. 查找你的分发版安装包名称
使用 PowerShell(其中,“distro”是分发版名称)输入以下命令:
1
| Get-AppxPackage -Name "*<distro>*" | Select PackageFamilyName
|
b. 找到 WSL 2 安装使用的 VHD 文件 fullpath,这将是你的 pathToVHD
1
| %LOCALAPPDATA%\Packages\<PackageFamilyName>\LocalState\<disk>.vhdx
|