Предупреждение
Когда я поменял ОС, я больше не обновляю этот скрипт и не исправляю ошибки.
Посмотрите на вкладку «Проблема» для некоторых известных проблем.
Рад объединить PRS с исправлениями.
Сценарий PowerShell для перемещения файла WSL 1 и WSL 2 Distros VHDX в другое место.

Предупреждение
Этот скрипт использует официальные команды
wslи использовался многими людьми. Тем не менее у некоторых людей были странные проблемы, которые привели к сломанным дискам WSL. Убедитесь, что у вас есть резервное копирование ваших данных, чтобы вы могли восстановить в случае ошибки.
Интерактивный способ перемещения WSL для Windows PowerShell.
./move-wsl.ps1D:wsl targetubuntu ) Прежде чем перемещать Docker WSL, обязательно остановите службу Docker. В противном случае Docker потерпит крах, и вам может потребоваться сбросить его на фабричные дефолты.
Установите пользователя по умолчанию в Distro, добавив следующую конфигурацию в /etc/wsl.conf .
[user]
default =YOUR_USERNAME Если файл не существует, создайте его вручную. Затем выйдите из своего дистрибуции, завершите его ( wsl -t YOUR_DISTRO ) и запустите его снова. Для получения дополнительных вариантов см. Microsoft Docs.
Некоторые дистрибутивы также разрешают настройки пользователя по умолчанию через командную строку с помощью YOUR_DISTRO config --default-user YOUR_USER (например ubuntu config --default-user johndoe ). Обязательно выключите дистрибутивы до ( wsl -t YOUR_DISTRO ).
Поскольку нам нужно нерегистрировать, чтобы импортировать его с тем же именем, стандартное дистрибутив можно переключить. Просто снова установите свой стандартный дистрибутив:
wsl -s YOUR_DISTRO При импорте дистрибуция будет зарегистрирована в текущей версии WSL по умолчанию. Вы можете установить свою версию WSL по умолчанию с помощью wsl --set-default-version <Version> . Когда версия WSL была случайно изменена во время перемещения, вы можете установить версию с помощью wsl --set-version <Distro> <Version> .