清理WSL2的磁盘占用

准备工作

在压缩虚拟磁盘前,需要将 WSL2 先关闭。

可以先使用命令行来检查它的状态:

wsl.exe --list --verbose

如果没有关闭(状态是 Running ),再用命令行去关闭它:

wsl.exe --terminate 

虽然这个方法对我来说有效,但你的环境可能跟我不同,这样做可能会导致你的数据发生损坏,建议你先备份一下WSL2的数据。

使用 diskpart 来压缩WSL2的虚拟磁盘
我发现可以使用 diskpart 工具来压缩WSL2的虚拟磁盘,它会根据WSL2中数据的大小来重新申请磁盘空间。

在命令行启动 diskpart 工具:

diskpart

接下来需要确定虚拟磁盘文件的位置。

WSL2的虚拟磁盘文件在C:\Users\{user}\AppData\Local\Packages\下面,不同的WSL2发行版对应的名称不同,例如 Pengwin 是 WhitewaterFoundryLtd.Co,Ubuntu 是 CanonicalGroupLimited,Debian 是
TheDebianProject 。找到了你的 WSL2 的文件夹,就能在它下面找到 LocalState\ext4.vhdx 这个磁盘文件。

例如,我的磁盘文件是 C:\Users\ontheroad\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\ext4.vhdx。

用 diskpart 选择这个文件:

select vdisk file="{vhdx文件名}"
compact vdisk

 

 

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发