Вопрос или проблема
По умолчанию Windows Sandbox работает с объемом памяти всего 40 ГБ, что действительно не так уж и много:
Есть ли способ увеличить объем памяти? Я хотел бы хотя бы удвоить его до 80 ГБ.
После проведения множества исследований, я пришел к выводу, что по состоянию на 31.08.2024 вы не можете изменить объем хранилища в Windows Sandbox.
Другие пользователи также обсуждают эту же проблему здесь: https://answers.microsoft.com/en-us/windows/forum/all/windows-sandbox-disk-space/b768bfcc-5eac-445e-88b3-196811161536
Я нашел несколько трудоемкий обходной путь для увеличения размера виртуального диска уже работающего песочницы и добавления дополнительного тома. Но я не смог увеличить размер системного тома (C:) сам по себе.
Предварительные условия: Установленный Hyper-V на хосте. В приведенной ниже инструкции используется действие “Изменить диск…” в менеджере Hyper-V.
Шаги:
-
На хост-машине:
-
Запустите песочницу. Пусть она работает в фоновом режиме (то есть переключитесь обратно на хост).
-
Найдите изображение vhdx для песочницы. Оно должно находиться по адресу
C:\Users\All Users\Microsoft\Windows\Containers\Sandboxes\<some-uuid-here>\sandbox.vhdx
.Под
Sandboxes
может быть несколько папок, проверьте дату vhdx, чтобы найти текущую. -
Начните менеджер Hyper-V от имени администратора и подключитесь к локальному компьютеру (Действие > Подключиться к серверу… > Локальный компьютер). Он должен автоматически выбрать только что подключенную машину.
-
Выберите Действие > Изменить диск…
-
На странице Найти диск найдите
sandbox.vhdx
из шага 2 выше. -
Перейдите на страницу Выбрать действие и выберите Расширить
-
Перейдите на страницу Настроить диск и увеличьте желаемый размер диска с 40 ГБ до необходимого вам значения.
-
Перейдите на страницу Сводка и выберите Завершить, чтобы подтвердить ваши изменения.
-
-
Теперь переключитесь на песочницу для следующих шагов:
- Запустите консоль управления дисками,
diskmgmt.msc
. - Обратите внимание, что размер Диска 0 увеличился, и после тома C: имеется нераспределенное пространство.
- Щелкните правой кнопкой мыши на нераспределенное пространство и выберите Создать простой том….
- Пройдите мастер создания нового простого тома, чтобы создать том.
- Запустите консоль управления дисками,
К сожалению, я не смог найти способ увеличить системный том, так как появляется ошибка управления виртуальными дисками с сообщением о том, что “Шифрование диска Bitlocker не может быть использовано, так как критические системные файлы Bitlocker отсутствуют или повреждены”.
Обратите внимание, что том, созданный на шаге 12, может быть смонтирован в пустую директорию, поэтому он может быть достаточно хорош для крупных программ, находящихся в одной директории на диске C:.
Подводя итог, большинство шагов на стороне хоста можно автоматизировать (например, с использованием Resize-VHD
). И, вероятно, на стороне песочницы это также возможно.
Ответ или решение
К сожалению, на данный момент в Windows Sandbox нет официального способа увеличить размер хранилища, так как по умолчанию оно ограничено 40 ГБ. Однако существует обходное решение, позволяющее увеличить виртуальный диск Sandbox не напрямую, а путем добавления дополнительного тома. Важно отметить, что для выполнения данной процедуры потребуется наличие установленного Hyper-V на хосте.
Как увеличить размер хранилища в Windows Sandbox
Шаги:
-
Запустите Windows Sandbox.
- Убедитесь, что Sandbox активно работает в фоновом режиме, после чего можно переключиться обратно на хост.
-
Найдите файл vhdx.
- Он должен находиться по пути:
C:\Users\All Users\Microsoft\Windows\Containers\Sandboxes\<some-uuid-here>\sandbox.vhdx
- В этом пути может быть несколько папок, поэтому проверьте дату файла vhdx, чтобы найти нужный.
- Он должен находиться по пути:
-
Запустите Hyper-V Manager от имени администратора.
- Выберите
Action > Connect to Server... > Local Computer
. Hyper-V автоматически подключится к вашему локальному компьютеру.
- Выберите
-
Редактирование виртуального диска:
- Выберите
Action > Edit Disk...
. - На странице "Locate Disk" укажите ранее найденный
sandbox.vhdx
. - На странице "Choose Action" выберите
Expand
. - На странице "Configure Disk" укажите новый размер диска (например, с 40 ГБ на 80 ГБ).
- Завершите процесс, нажав на
Finish
.
- Выберите
-
Переключитесь на Windows Sandbox:
- Откройте консоль управления дисками, введя команду
diskmgmt.msc
. - Вы увидите, что размер Диска 0 увеличился, а после тома C: появилось нераспределенное пространство.
- Щелкните правой кнопкой мыши по этому нераспределенному пространству и выберите
New Simple Volume...
. - Следуйте мастеру для создания нового тома.
- Откройте консоль управления дисками, введя команду
-
Обратите внимание:
- К сожалению, не удалось найти способ расширить системный том (C:), так как при попытке появляется ошибка "Bitlocker Drive Encryption cannot be used because critical Bitlocker system files are missing or corrupted".
- Новый том, созданный на этапе 5, можно подключить к пустой директории, что может быть достаточно для установки или хранения больших программ, которые требуют отдельного пространства.
Заключение
Хотя это решение не позволяет увеличить размер основного системного тома Windows Sandbox, оно позволяет вам использовать дополнительное пространство для хранения данных и программ. Если вы хотите автоматизировать этот процесс, вы можете использовать PowerShell командлет Resize-VHD
, что может значительно упростить и ускорить выполнение этих действий в будущем.