Когда вы создали VM WSL, то по умолчанию, её диск создается по пути

C:\Users\%UserName%\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu24.04LTS_*\LocalState\ext4.vhdx

где CanonicalGroupLimited.Ubuntu24.04LTS_* — это рандомное имя папки экземпляра данной установки. Например, в моем случае это CanonicalGroupLimited.Ubuntu24.04LTS_79rhkp1fndgsc

Диск ext4.vhdx постоянно растет по мере работы с виртуальной машиной.

Причем, установочные файлы для ОС Linux размещаются в другое место, например для Ubuntu 24.04:

C:\Program Files\WindowsApps\CanonicalGroupLimited.Ubuntu24.04LTS_2404.1.31.0_x64__79rhkp1fndgsc

С помощью команды

Get-AppxPackage |? { $_.Name -like "*Ubuntu*" }

можно узнать точный путь и имя папки дистрибутива.

Освобождаем место

Виртуальную машину в последних версиях WSL2 можно переместить на другой диск. Для этого потребуется команда

wsl --manage Ubuntu --move D:\WSL\Ubuntu

где Ubuntu — имя вашей инсталляции (можно получить через wsl -l -v)

Также, отдельно можно переместить файл подкачки WSL Linux (swap).

Его положение задаётся в конфигурационном файле C:\Users\%username%\.wslconfig. пример такого файла, который ограничивает потребление оперативной памяти до 6 ГБ, и до 2 ядер, задает размер swap файла, а также перемещает файл подкачки на диск D, приведен ниже:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Settings apply across all Linux distros running on WSL 2
[wsl2]
 
# Limits VM memory to use no more than 4 GB, this can be set as whole numbers using GB or MB
memory=6GB
 
# Sets the VM to use two virtual processors
processors=2
 
# Sets amount of swap storage space
swap=2GB
 
# Sets swapfile path location, default is %USERPROFILE%\AppData\Local\Temp\swap.vhdx
swapfile=D:\\Docker\\Swap\\wsl-swap.vhdx

Обратите внимание, что в пути обязателен двойной слэш (\\).

[Посещений: 1, из них сегодня: 1]

Добавить комментарий