Основные команды для WSL

Далее приведены команды WSL в формате, поддерживаемом PowerShell или командной строкой Windows. Чтобы выполнить эти команды из командной строки дистрибутива Bash или Linux, измените wsl на wsl.exe. Чтобы получить полный список команд, выполните команду wsl --help.

Установка

wsl --install

Установите WSL и дистрибутив Ubuntu по умолчанию для Linux. Подробнее. Эту команду также можно использовать для установки дополнительных дистрибутивов Linux, выполнив команду wsl --install <Distribution Name>. Чтобы получить допустимый список имен дистрибутивов, выполните команду wsl --list --online.

Возможны следующие значения.

  • --distribution: укажите дистрибутив Linux для установки. Доступные дистрибутивы можно найти, выполнив команду wsl --list --online.
  • --no-launch: установите дистрибутив Linux, но не запускайте его автоматически.
  • --web-download: установка из интернет-источника вместо использования Майкрософт Store.

Если WSL не установлен, доступны следующие параметры:

  • --inbox: устанавливает WSL с помощью компонента Windows вместо Майкрософт Store. (Обновления WSL будут получаться через обновления Windows, а не отправляться по мере доступности через магазин).
  • --enable-wsl1: включает WSL 1 во время установки версии WSL Майкрософт Store, также включив дополнительный компонент "подсистема Windows для Linux".
  • --no-distribution: не устанавливайте дистрибутив при установке WSL.

Список доступных дистрибутивов Linux

wsl --list --online

Выводит список дистрибутивов Linux, доступных в интернет-магазине. Эту команду можно также указать так: wsl -l -o.

Список установленных дистрибутивов Linux

wsl --list --verbose

Выводит список дистрибутивов Linux, установленных на компьютере под управлением Windows, в том числе состояние (независимо от того, запущен дистрибутив или остановлен) и версию WSL, в которой работает дистрибутив (WSL 1 или WSL 2). Применяется в WSL 1 и WSL 2. Эту команду можно также указать так: wsl -l -v. Дополнительные параметры, которые можно использовать с командой list: --all — для перечисления всех дистрибутивов, --running — для вывода списка только тех дистрибутивов, которые запущены в данный момент, --quiet — для отображения только имен дистрибутивов.

Указание версии WSL (1 или 2)

wsl --set-version <distribution name> <versionNumber>

Чтобы указать версию WSL (1 или 2), в которой работает дистрибутив Linux, измените <distribution name> на имя дистрибутива, а <versionNumber> — на число 1 или 2. Применяется в WSL 1 и WSL 2.

Указание версии WSL по умолчанию

wsl --set-default-version <Version>

Чтобы задать WSL 1 или WSL 2 как версию по умолчанию, измените <Version> на число 1 или 2, чтобы указать версию WSL, которая будет использоваться по умолчанию для установки новых дистрибутивов Linux. Например, wsl --set-default-version 2. Применяется в WSL 1 и WSL 2.

Указание дистрибутива Linux по умолчанию

wsl --set-default <Distribution Name>

Чтобы задать дистрибутив Linux по умолчанию, который команды WSL будут использовать для запуска, измените <Distribution Name> на имя предпочитаемого дистрибутива Linux.

Изменение каталога на домашний

wsl ~

Команду ~ можно использовать с WSL для запуска в домашнем каталоге пользователя. Чтобы в командной строке WSL вернуться в домашний каталог из другого, можно использовать команду cd ~.

Запуск определенного дистрибутива Linux из PowerShell или CMD

wsl --distribution <Distribution Name> --user <User Name>

Чтобы запустить определенный дистрибутив Linux от имени конкретного пользователя, измените <Distribution Name> на имя предпочитаемого дистрибутива Linux (например, Debian), а <User Name> — на имя существующего пользователя (например, root). Если указанный пользователь не существует в дистрибутиве WSL, появится сообщение об ошибке. Чтобы ввести имя текущего пользователя, выполните команду whoami.

Обновление WSL

wsl --update

Обновите версию WSL до последней версии. Возможны следующие значения.

  • --web-download: скачайте последнее обновление из GitHub, а не из магазина Майкрософт.

Проверка состояния WSL

wsl --status

Отображает общие сведения о конфигурации WSL, такие как тип дистрибутива по умолчанию, дистрибутив по умолчанию и версия ядра.

Проверка версии WSL

wsl --version

Проверьте сведения о версии WSL и его компонентах.

Команда help

wsl --help

Отображает список параметров и команд, доступных в WSL.

Выполнение от имени определенного пользователя

wsl -u <Username>`, `wsl --user <Username>

Чтобы запустить WSL в качестве указанного пользователя, замените <Username> именем пользователя, который существует в распределении WSL.

Изменение пользователя по умолчанию для распределения

<DistributionName> config --default-user <Username>

Измените пользователя по умолчанию для входа распределения. Чтобы стать пользователем по умолчанию, пользователь должен уже существовать в распределении.

Например, ubuntu config --default-user johndoe изменит пользователя по умолчанию для распределения Ubuntu на пользователя "johndoe".

Примечание

Если вам не удается определить имя распределения, используйте команду wsl -l.

Предупреждение

Эта команда не будет работать для импортированных дистрибутивов, так как у них нет исполняемого средства запуска. Вместо этого можно изменить пользователя по умолчанию для импортированных дистрибутивов с помощью файла /etc/wsl.conf. См. раздел "Параметры автоматического подключения" в документе Настройка дополнительных параметров.

Shutdown

wsl --shutdown

Немедленно завершает работу всех запущенных дистрибутивов и облегченной служебной виртуальной машины с WSL 2. Эта команда может потребоваться в экземплярах, требующих перезапуска среды виртуальных машин WSL 2, например при изменении ограничений использования памяти или внесении изменений в файл .wslconfig.

Завершение

wsl --terminate <Distribution Name>

Чтобы завершить работу определенного дистрибутива или остановить его выполнение, замените <Distribution Name> именем нужного дистрибутива.

Импорт и экспорт дистрибутива

wsl --export <Distribution Name> <FileName>
wsl --import <Distribution Name> <InstallLocation> <FileName>

Импортирует и экспортирует указанный tar-файл в качестве нового дистрибутива. Именем файла может быть "-" для стандартного ввода. Возможны следующие значения.

  • --vhd: указывает, что дистрибутив импорта и экспорта должен быть VHDX-файлом, а не TAR-файлом.
  • --version: только для импорта указывает, следует ли импортировать дистрибутив в виде дистрибутива WSL 1 или WSL 2.

Импорт дистрибутива на месте

wsl --import-in-place <Distribution Name> <FileName>

Импортирует указанный VHDX-файл в качестве нового дистрибутива. Виртуальный жесткий диск должен быть отформатирован в формате ext4.

Отмена регистрации или удаление дистрибутива Linux

Хотя распределения Linux можно устанавливать из Microsoft Store, через Store их удалить невозможно.

Чтобы отменить регистрацию и удалить распределение WSL, выполните следующие действия:

wsl --unregister <DistributionName>

При замене <DistributionName> именем целевого распределения Linux регистрация этого распределения в WSL будет отменена, чтобы его можно было переустановить или очистить. Внимание. После отмены регистрации все данные, параметры и программное обеспечение, связанные с этим распределением, будут безвозвратно утеряны. При переустановке из Store будет установлена чистая копия дистрибутива. Например, wsl --unregister Ubuntu удалит Ubuntu из распределений, доступных в WSL. После запуска wsl --list раскроет, что он больше не в списке.

Вы также можете удалить приложение дистрибутива Linux на компьютере под управлением Windows так же, как и любое другое приложение из Store. Чтобы переустановить его, найдите это распределение в Microsoft Store и нажмите "Запустить".

Подключение диска или устройства

wsl --mount <DiskPath>

Позволяет подключить физический диск во всех дистрибутивах WSL 2, изменив <DiskPath> на путь к каталогу или файлу, где расположен диск. См. статью Подключение диска Linux в WSL 2. Возможны следующие значения.

  • --vhd: указывает, что <Disk> относится к виртуальному жесткому диску.
  • --name: подключите диск, используя пользовательское имя для точки подключения.
  • --bare: подключение диска к WSL 2 без подключения к файловой системе.
  • --type <Filesystem>: тип файловой системы, используемой при подключении диска, если не указано значение по умолчанию (ext4). Эту команду можно также указать так: wsl --mount -t <Filesystem>. Тип файловой системы можно определить с помощью команды blkid <BlockDevice>, например: blkid <dev/sdb1>.
  • --partition <Partition Number>: номер раздела для подключения согласно индексу, если не указан вариант по умолчанию (весь диск).
  • --options <MountOptions>. Некоторые параметры, относящиеся к файловой системе, можно добавить при подключении диска. Например, параметры подключения к ext4: wsl --mount -o "data-ordered" или wsl --mount -o "data=writeback. Но сейчас поддерживаются только параметры, относящиеся к файловой системе. Общие параметры, такие как ro, rw или noatime, не поддерживаются.

Примечание

Если для доступа к wsl.exe (64-разрядному средству) используется 32-разрядный процесс, вам может потребоваться выполнить указанную выше команду следующим образом: C:\Windows\Sysnative\wsl.exe --command.

Отключение дисков

wsl --unmount <DiskPath>

Отключите диск, указанный по пути к диску. Если путь к диску не указан, эта команда отключит и отсоединит все подключенные диски.

Нерекомендуемые команды WSL

wslconfig.exe [Argument] [Options]
bash [Options]
lxrun /[Argument]

Эти команды с исходным синтаксисом WSL использовались для настройки дистрибутивов Linux, установленных с помощью WSL, но были заменены командами с синтаксисом wsl или wsl.exe.