不少人在用 WSL(Windows Subsystem for Linux)時,發現記憶體異常高,一查發現是 VmmemWSL
佔用太多 RAM,甚至讓電腦卡到爆。這篇教你怎麼限制 WSL 用量、定期清理,根治這個問題。

1. 建立 .wslconfig
限制 WSL 用量
Step 1:打開使用者資料夾
按下 Windows + R
,輸入以下指令後按 Enter:
%UserProfile%
這會直接打開你的使用者資料夾(例如 C:\Users\你的帳號
)。
Step 2:新增 .wslconfig
設定檔
在該資料夾內:
- 新增檔案
.wslconfig
(要顯示副檔名的話,請在檔案總管上方選「檢視」→ 勾選「副檔名」) - 如果已經存在
.wslconfig
,可以直接覆蓋內容
Step 3:貼上設定內容
用記事本編輯 .wslconfig
,輸入以下內容:
[wsl2]
memory=4GB
processors=4
swap=0
說明:
memory
:限制最多記憶體,例如 4GB(也可改成 2GB、8GB…)processors
:限制 CPU 核心數swap=0
:關閉 swap,避免使用硬碟虛擬記憶體佔空間
Step 4:套用設定
開啟 PowerShell(或 CMD),輸入:
wsl --shutdown
這行會關閉所有正在執行的 WSL instance,讓設定立即生效。
二、其他建議操作
定期清理 WSL 記憶體
WSL 開久了記憶體不一定會釋放,可以定期執行:
wsl --shutdown
檢查是哪個程式在吃記憶體
打開 WSL,輸入:
htop
就能看到是哪個程式佔用過多,直接關掉就好。
注意 Docker Desktop 的記憶體佔用
如果你有使用 Docker,它會跑在 WSL 上,也會吃掉大量資源。
建議在 Docker Desktop 的設定裡也限制記憶體,或是平常沒用就關掉 Docker。
結語
這樣做完後,VmmemWSL
的記憶體就不會再隨便暴衝了。
建議每台有跑 WSL 的機器都設定一次 .wslconfig
,長時間使用下來會省很多資源、減少當機狀況。
0 Comments