wsl2 出現 Vmmem記憶體占用過大問題解決

2021-10-06 13:59:37 字數 1118 閱讀 5402

分步解決方法

定期執行快取刪除

在wsl bash上,執行

$ sudo crontab -e -u root
並新增以下行:

*/15 * * * * sync; echo 3 > /proc/sys/vm/drop_caches; touch /root/drop_caches_last_run

「 * / 15 」表示將每15分鐘執行一次。您可以根據需要更改它

自動啟動cron服務

在〜/ .bashrc 上新增以下行:

[ -z "$(ps -ef | grep cron | grep -v grep)" ] && sudo /etc/init.d/cron start &> /dev/null

允許啟動cron服務而無需輸入root密碼,

在wsl bash上執行$ sudo visudo並新增以下行:

%sudo all=nopasswd: /etc/init.d/cron start

(可選)硬限制最大記憶體

預設情況下,它限制為主機記憶體的80%,如果要更改它,請在主機上建立乙個具有以下內容的.wslconfig檔案%userprofile%

[wsl2]

memory=4gb

swap=8gb

localhostforwarding=true

最後,要確保所有更改都生效,請wsl --shutdown在cmd.exe上執行。重新開啟您的wsl終端,然後玩得開心:)

您可以通過檢視/ root / drop_caches_last_run上次修改日期來檢查cron作業是否正在相應地執行:

$ sudo stat -c '%y' /root/drop_caches_last_run

解決WSL2中Vmmem記憶體占用過大問題

1按下windows r 鍵,輸入 userprofile 並執行進入使用者資料夾 2新建檔案 wslconfig 然後記事本編輯 3 填入以下內容並儲存,memory為系統記憶體上限,這裡我限制最大2gb,可根據自身電腦配置設定 wsl2 memory 2gb swap 0 localhostfo...

python 2出現的次數

編寫乙個方法,計算從 0 到 n 含 n 中數字 2 出現的次數。示例 輸入 25輸出 9解釋 2 12,20 21,22 23,24 25 注意 22 應該算作兩次 n 10 9一 dp方法 第i位是1 dp 3 當第3位是0,1 2位取00 99時2的次數 當第3位是1,1 2位取00 78時2...

修改 WSL2 可用記憶體大小和交換分割槽大小

wsl2預設可以使用的記憶體大小為主機的80 對於linux而言即使裝了桌面,一般的開發也沒必要給這麼多記憶體,分多了,反而有可能卡主機的windows 操作 1.開啟windows資源管理器,位址列輸入 userprofile 回車,在該目錄下建立乙個檔案,名字為.wslconfig,寫入內容示例...