当前位置: 首页 > article >正文

在WSL2中删除文件后,磁盘空间未释放怎么办

        我在WSL中删掉了一些文件,但是磁盘剩余空间并没有增加,于是去搜索了相关内容,找到了原因和解决办法

1.原因分析

        不同于 WSL1,WSL2 本质上是虚拟机,所以 Windows 会自动创建 vhdx 后缀的虚拟磁盘文件作为存储

        这个 vhdx 后缀的虚拟磁盘文件特点是可以自动扩容,但是一般不会自动缩容

        一旦有很多文件把它“撑大”,即使把这些文件删除它也不会自动“缩小”

        所以删除文件后还需要我们手动进行压缩才能释放磁盘空间

2.第一步,找到并确定要压缩的虚拟磁盘文件

        如果默认WSL安装在C盘,那么Linux 发行版的.vhdx文件一般都会在下面的路径中

C:\Users\User\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\ext4.vhdx

3.第二步,打开PowerShell 并顺序使用以下命令

# 关闭 WSL2 中的 linux distributions
wsl --shutdown
# 运行管理计算机的驱动器的 DiskPart 命令
diskpart
# 选择虚拟磁盘文件
select vdisk file="C:\Users\User\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\ext4.vhd"
# 只读 附加磁盘镜像文件
attach vdisk readonly
# 压缩 vhdx 磁盘镜像文件
compact vdisk
# 分离 vhdx 磁盘镜像文件
detach vdisk
# 退出
exit

         之后在文件资源管理器中就能看到C盘的存储空间得到了释放


http://www.kler.cn/a/281179.html

相关文章:

  • layui2.9 树组件默认无法修改节点图标,修改过程记录下
  • CentOS 7 更换为国内YUM源详细教程
  • K8s系列之:K8s OPERATOR是什么
  • fastadmin表单中二维数组组件+图片上传
  • 【Java EE】深入探讨 Java 中 Thread 类的使用
  • CTFhub通关攻略-SRRF篇【6-11关】
  • OpenCV小练习:身份证号码识别
  • 快速学习安装使用etcd
  • android13固定app方向 强制app方向
  • 【STM32】时钟体系
  • BMS电流采集——分流器采集问题
  • 呼叫中心系统数据分析报表统计
  • 在使用React Hooks中,如何避免状态更新时的性能问题?
  • echarts 中 鼠标悬浮上加单位
  • JVM极简教程
  • 【CF】1056E-Check Transcription 题解
  • npm报错network request to https://registry.npmjs.org/fuse.js failed的解决方法
  • Mybatis框架
  • 【Redis】Redis 事务
  • 天玑9200 V2双芯联动旗舰手机Vivo X90拆解