本文用于记录自己使用Linux/WSL以及部署环境时的一些坑与对应操作,当作备忘录了
linux环境为Ubuntu 24.04 LTS/22.04 LTS。(lsb_release -a可查看ubuntu使用版本)
文件管理
在wsl里删文件后,主机的空间并没有腾出来?
WSL默认需要压缩虚拟磁盘以释放空间。
在cmd中运行diskpart,并在接下来的命令行中依次运行
select vdisk file="path\to\ext4.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk
exit
如果要一劳永逸地解决压缩问题,想要删除后自动释放空间,先在%USERPROFILE%\.wslconfig里添加
[experimental]
sparseVhd=true
接着在命令行中对已有发行版启用Sparse:
wsl --manage <发行版名称> --set-sparse true
这样虚拟磁盘就能自己释放空间啦
我要怎么查看文件的占用空间?
du就是用来解决这个的:
du -h \path\to\dir --max-depth=1 | sort -hr
其中的|是管道符,用于将前一个指令的输出结果传至后一个。-h代表“human”,方便人类读懂输出结果。--max-depth=1表示查看操作只会递归至一层子目录,再往下的目录不会计算。
如果不加
--max-depth=1,du将默认计算当前目录下所有文件占用多少空间,会刷屏的……
sort的-h是“human-numeric-sort”,让其能结合存储单位排序。
如果
sort不加-h,它会按照字符的顺序排序,如图所见
