Windows содержит ряд интересных изменений и улучшений, внесенных в функцию WSL. К ним относятся дополнительные дистрибутивы в Магазине, возможность просмотра файлов WSL из Проводника и возможность экспорта и импорта дистрибутива WSL в / из файла TAR.
Экспорт и импорт WSL
В Windows 11, 10 вы можете импортировать и экспортировать ваши дистрибутивы Linux в файл TAR. Это позволит вам настроить среду Linux, установить нужные приложения, а затем экспортировать их в файл. Позже вы можете восстановить уже настроенный дистрибутив на другом ПК или поделиться им с другом.
Это можно сделать с помощью wsl.exe, инструмента командной строки, который позволяет управлять WSL. Легко перемещайте дистрибутивы WSL между компьютерами с Windows с помощью импорта и экспорта!
Экспорт дистрибутива WSL в Windows 10
Чтобы экспортировать дистрибутив WSL в файл, выполните следующие действия.
Шаг 1: Запустите дистрибутив, для которого вы хотите создать резервную копию.
Обновите его, установите и настройте приложения и внесите любые другие необходимые изменения.
После чего выйдите из среды WSL.
Шаг 2: Откройте новую командную строку или PowerShell. Выполните команду чтобы просмотреть список установленных дистрибутивов WSL и их имена:
wsl --list --all
Шаг 3: Выполните следующую команду:
wsl.exe --export <DistributionName> <FileName>
Замените <DistributionName> именем вашего дистрибутива WSL, например, Ubuntu. Замените <FileName> на полный путь где будет сохранен файл TAR с вашим дистрибутивом.
Например:
wsl.exe --export Ubuntu-20.04 C:\Users\alex_\Desktop\Ubuntu20_Backup.tar
Поскольку для сохранения резервной копии настроенного дистрибутива указан рабочий стол, на нем появится архив с именем Ubuntu20_Backup.tar
Импорт дистрибутива WSL из файла в Windows 10
Вы можете импортировать файл tar, который содержит корневую файловую систему дистрибутива Linux, что позволяет импортировать любой дистрибутив, который вам нравится, с любой конфигурацией. Просто, укажите имя и путь к папке где находится ранее настроенный дистрибутив WSL.
Чтобы импортировать дистрибутив WSL из файла, выполните следующие действия.
Шаг 1: Откройте новую командную строку или PowerShell.
Выполните следующую команду:
wsl.exe --import <DistributionName> <InstallLocation> <FileName>
Замените <DistributionName> именем, которое вы хотите назначить для дистрибутива, который вы импортируете.
Замените <InstallLocation> полным путем к папке, в которой вы хотите сохранить этот дистрибутив WSL.
Замените <FileName> полным путем к вашего файла TAR.
Например:
wsl.exe --import ubuntu20 c:\ubuntu20 c:\users\alex_\desktop\ubuntu20_backup.tar
Шаг 2: Чтобы запустить импортированный дистрибутив, введите в командной строке или PowerShell следующую команду:
wsl --distribution <DistributionName>
Замените часть <DistributionName> именем, которое вы присвоили импортированному дистрибутиву.
Например:
wsl --distribution ubuntu20
Если импорт Wsl прошел как надо, команда wsl --list --all вернет название вашего дистрибутива.
Настройка дистрибутива по умолчанию
Дистрибутив по умолчанию WSL запускается при выполнении wsl в командной строке.
wsl -s <DistributionName>
или
wsl --setdefault <DistributionName>
Замените значение <DistributionName> названием дистрибутива который вы хотите использовать по умолчанию.
Пример: (с помощью PowerShell)
wsl -s ubuntu20
Теперь при выполнении wsl npm init эта команда будет выполняться в Ubuntu. Если выполнить wsl, откроется сеанс импортированной Ubuntu20.
Удалить импортированный дистрибутив Linux
Наконец, чтобы удалить импортированный дистрибутив Linux, выполните команду
wsl.exe --unregister <DistributionName>
Например:
wsl.exe --unregister Ubuntu20
Как установить пользователя по умолчанию для дистрибутива WSL, который был перемещен вручную с помощью wsl --import
Когда вы импортируете дистрибутив WSL2, запуск этого дистрибутива на новом компьютере приведет к тому, что вы войдете в систему как root.
Есть много способов исправить это, но я просто хочу, чтобы это работало, когда я запускаю «wsl» или «wsl -d distroname»
Запустите свой дистрибутив, а затем отредактируйте файл /etc/wsl.conf и добавьте в раздел [user]:
[user] default=Ваше_имя
Это идеальный способ установить пользователя по умолчанию вашего дистрибутива WSL после экспорта, файл wsl.conf хранится в файловой системе Linux, и этот параметр сохранится при последующем экспорте/импорте.
Статьи по теме:
Как установить WSL 2 подсистему Windows для Linux 2 в Windows 10
(WSL2) Что такое подсистема Windows для Linux 2?
Доступ к файлам WSL Linux с помощью Проводника Windows 10
Как Выполнить команды Linux из Командной строки Windows 10.
Windows 10, Установка локального веб-сервера (Apache, MySQL, PHP) в Wsl 1 и Wsl 2.