Windows Subsystem for Linux (WSL) 子系统虚拟磁盘空间回收

Windows9个月前更新 四哥説
345 0
Windows Subsystem for Linux (WSL) 子系统虚拟磁盘空间回收

 

概述

Windows 11 中使用 WSL Linux 子系统一段时间后,Linux 子系统虚拟磁盘文件(ext4.vhdx)会被逐渐撑大,主要原因来源于 Linux 系统中的文件存储随着时间的推移,文件占用磁盘空间会越来越大。哪怕在 Linux 中删除一些文件,虚拟磁盘文件的大小并不会因此缩小。在撰写该文章时,仍然只能通过命令行手动来进行虚拟磁盘文件空间的回收。

Windows Subsystem for Linux (WSL) 子系统虚拟磁盘空间回收

磁盘空间回收流程

1.关闭虚拟机

wsl --shutdown
Windows Subsystem for Linux (WSL) 子系统虚拟磁盘空间回收

2.查找 ext4.vhdx 虚拟磁盘文件位置

2.1.查询 WSL Distro 名称

wsl -l
Windows Subsystem for Linux (WSL) 子系统虚拟磁盘空间回收

2.2.定位 vhdx 文件

WSL 虚拟机默认安装在系统分区的用户工作空间目录中,大致目录结构是固化的。通常在这样的目录下:

C:\Users\<用户名>\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState

CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc文件名名称说明:

  • CanonicalGroupLimited. 固定文件夹前缀名称
  • Ubuntu wsl -l 查询到的 Distro 名称
  • _79rhkp1fndgsc 安装时随机的后缀名称
Windows Subsystem for Linux (WSL) 子系统虚拟磁盘空间回收

3.通过命令行回收磁盘空间

#进入文件夹
cd C:\Users\XS\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState>
optimize-vhd -Path ext4.vhdx -Mode full
Windows Subsystem for Linux (WSL) 子系统虚拟磁盘空间回收 Windows Subsystem for Linux (WSL) 子系统虚拟磁盘空间回收

自动回收设置

#查看虚拟机的名称
wsl -l
#将发行版的 vhdx 设置为稀疏,从而允许自动回收磁盘空间
wsl --manage Ubuntu -s true
Windows Subsystem for Linux (WSL) 子系统虚拟磁盘空间回收

约定

wsl -v
# WSL 版本信息
WSL 版本: 2.0.14.0
内核版本: 5.15.133.1-1
WSLg 版本: 1.0.59
MSRDC 版本: 1.2.4677
Direct3D 版本: 1.611.1-81528511
DXCore 版本: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows 版本: 10.0.26040.1000
© 版权声明

相关文章

没有相关内容!

暂无评论

暂无评论...