We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
从 WSL2 微软起将虚拟机磁盘镜像文件转换为vhdx格式,用于存储其内容,类似于vmdk、vdi,用过虚拟机的同学应该都不陌生。
vhdx
这种镜像文件的特点是支持自动扩容,即使磁盘镜像文件中已经删除了,但是一般不会自动缩容。因此磁盘镜像文件本身会越来越大。所以需要回收这部分已删除但是实际磁盘镜像文件并没有缩小的空间。
使用Diskpart工具中的compact功能压缩磁盘镜像文件 步骤如下:
Diskpart
compact
# 彻底关闭 WSL2 虚拟机 wsl --shutdown # 新开一个 Diskpart 窗口 diskpart # 指定 WSL2 虚拟机磁盘镜像文件位置 select vdisk file="C:\WSL-Distros\…\ext4.vhdx" # 只读 附加磁盘镜像文件 attach vdisk readonly # 压缩 vhdx 磁盘镜像文件 compact vdisk # 分离 vhdx 磁盘镜像文件 detach vdisk # 退出 exit
代码来自 microsoft/WSL#4699 (comment)
如此操作完成之后,就可以看到磁盘空间已经收回了。
The text was updated successfully, but these errors were encountered:
可以先执行一下fstrim -a这个命令回收一下wsl未使用的空间,我之前只是用上面的步骤发现并没有变小, 然后自己去把虚拟磁盘写0空间才会变化,现在用这个命令倒是快很多
Sorry, something went wrong.
DiskPart 遇到错误: 指定的文件已加密,而且用户没有能力解密。 有关详细信息,请参阅系统事件日志。
我也遇到一样的回答,请问是否有解决方法呢?
DiskPart 遇到错误: 指定的文件已加密,而且用户没有能力解密。 有关详细信息,请参阅系统事件日志。 我也遇到一样的回答,请问是否有解决方法呢?
你是否在应用设置中将从Microsoft Store安装的Linux移动了了位置,如果是在应用设置中移动的,请重装Linux,然后使用目录软链接将数据移动到其他盘
No branches or pull requests
问题
从 WSL2 微软起将虚拟机磁盘镜像文件转换为
vhdx
格式,用于存储其内容,类似于vmdk、vdi,用过虚拟机的同学应该都不陌生。这种镜像文件的特点是支持自动扩容,即使磁盘镜像文件中已经删除了,但是一般不会自动缩容。因此磁盘镜像文件本身会越来越大。所以需要回收这部分已删除但是实际磁盘镜像文件并没有缩小的空间。
解决方案
使用
Diskpart
工具中的compact
功能压缩磁盘镜像文件步骤如下:
如此操作完成之后,就可以看到磁盘空间已经收回了。
The text was updated successfully, but these errors were encountered: