WSL2扩展虚拟硬件磁盘( VHD大于256GB报错问题)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
WSL2使用虚拟硬件磁盘(VHD)来存储Linux文件。如果达到其最大大小,则可能需要对其进行扩展。
WSL2 VHD使用ext4文件系统,此VHD会自动调整大小以满足你的存储需求,并且其最大大小为256GB。
如果你的分发版大小增长到大于256GB,则会显示错误,指出磁盘空间不足。 可以通过扩展 VHD 大小来纠正此错误。
若要将最大 VHD 大小扩展到超过 256GB,请执行以下操作:
# wsl -l -v
  NAME           STATE           VERSION
* Ubuntu18.04    Running         2
# wsl --shutdown
# Get-AppxPackage | Select "Ubuntu18.04",PackageFamilyName

//找到WSL2安装使用的VHD文件fullpath,这将是你的pathToVHD
路径为:D:\installer\wsl2\ext4.vhdx

//通过完成以下命令调整WSL2 VHD的大小
以管理员权限打开Powershell命令提示,然后输入:
# diskpart
输入:help命令
# list vol //查看盘符大小详情
  卷 ###      LTR  标签         FS     类型        大小     状态       信息
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  卷     0     E                       DVD-ROM         0 B  无介质
  卷     1     C                NTFS   磁盘分区         149 GB  正常         系统
  卷     2     D                NTFS   磁盘分区         315 GB  正常

# list help
Microsoft DiskPart 版本 10.0.19041.1

DISK        - 显示磁盘列表。例如,LIST DISK。
PARTITION   - 显示所选磁盘上的分区列表。
              例如,LIST PARTITION。
VOLUME      - 显示卷列表。例如,LIST VOLUME。
VDISK       - 显示虚拟磁盘列表。

# list vdisk //查看虚拟硬盘,同样可以查看虚拟硬盘路径位置
虚拟磁盘 ###  磁盘 ###  状态                  类型       文件
  ------------  --------  --------------------  ---------  ----
  虚拟磁盘 0       磁盘 ---  已添加                   未知          D:\installer\wsl2\ext4.vhdx
# Select vdisk file="D:\installer\wsl2\ext4.vhdx"
# expand vdisk maximum="358400" //单位MB,358400 = 315GB.

参考