# 前言
在 WSL 環境下,發現即使將 linux 中的檔案刪除,windows 下的磁碟空間也沒有釋放。
# 將 Docker Build Cache 刪除
- 查看目前的建置緩存
| TYPE TOTAL ACTIVE SIZE RECLAIMABLE |
| Images 9 8 28.91GB 13.19GB (45%) |
| Containers 8 8 3.872GB 0B (0%) |
| Local Volumes 1 1 263.9kB 0B (0%) |
| Build Cache 64 0 44.79GB 44.79GB |
- 刪除 Build Cache
| sudo docker builder prune |
| WARNING! This will remove all dangling build cache. Are you sure you want to continue? [y/N] |
在這個步驟後發現 windows 下的磁碟空間沒有釋放。
# 釋放虛擬磁碟檔案
- 將 WSL 關機
- 進入 diskpart
- 選擇虛擬磁碟
請替換 user
為自己的使用者名稱
並且依 linux 版本不同 CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc
會有所不同。
虛擬磁碟可以在這裡找到 C:\Users\ user
\AppData\Local\Packages\ CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc
\LocalState\ext4.vhdx
| select vdisk file="C:\Users\user\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState\ext4.vhdx" |
- 以只讀模式附加磁碟
- 壓縮虛擬磁碟
- 卸載虛擬磁碟
- 離開 diskpart
磁碟空間已經釋放後,重新啟動 WSL。