wsl --version и страницей релизов Microsoft (сверьтесь с документацией)WSL (Windows Subsystem for Linux) — подсистема Windows, которая позволяет запускать Linux-приложения без отдельной виртуальной машины. Что изменилось между ветками по данным нашего канала:
| Параметр | WSL 2 | WSL 3.0 |
|---|---|---|
| Запуск Linux-контейнеров | В посте как функция WSL 2 не упоминается | Заявлено нововведением: контейнеры запускаются в Windows через WSL |
| Доступность | — | «Релиз уже доступен для всех пользователей» (пост канала) |
| Номер сборки | сверьтесь с документацией (`wsl --version`) | В посте номер не указан; 3.0.3.0 проверяется через `wsl --version` |
| Дата выхода | — | В посте не указана — сверьтесь с документацией |

winver.Порядок действий и точки контроля:
1. Узнать текущую версию → в выводе появится номер ветки (2.x или 3.x).
2. Обновить подсистему → wsl --version покажет 3.x.
3. Запустить дистрибутив и контейнер → hello-world отработает без ошибок.
Пример: на машине с WSL 2 команда wsl --version печатает WSL version: 2.x.x.x, а после обновления — строку с 3.; конкретный номер сверяйте с релизом Microsoft.
Что сделать: откройте PowerShell от администратора и снимите три среза: версия подсистемы, список дистрибутивов и их версии, статус WSL.
wsl --version
wsl --list --verbose
wsl --status
Зачем: без «до» невозможно доказать «после». Заодно вы увидите, установлен ли WSL вообще и какой дистрибутив стоит по умолчанию — его имя понадобится на шаге 3.
Как проверить: команда wsl --list --verbose выводит таблицу с колонками NAME, STATE, VERSION; в колонке VERSION для вашего дистрибутива обычно стоит 2. Если вместо таблицы печатается справка по командам — у вас встроенная старая сборка WSL, переходите к шагу 2. Запишите имя дистрибутива.
Пример вывода:
NAME STATE VERSION
* Ubuntu Running 2
Звёздочка * отмечает дистрибутив по умолчанию — именно его подставит wsl без флага -d.

Что сделать: обновите подсистему, погасите работающие экземпляры, затем проверьте, что дистрибутив работает на новой ветке.
wsl --update
wsl --shutdown
wsl --version
wsl --list --verbose
Если wsl --update не находит обновление, используйте загрузку из веба:
wsl --update --web-download
Зачем: wsl --update ставит актуальную сборку подсистемы из источника Microsoft, а wsl --shutdown нужен, чтобы уже запущенные Linux-процессы не удерживали старые бинарники — без перезапуска версия в wsl --version может остаться прежней.
Для понимания потока: обновление затрагивает три слоя — компонент Windows (Подсистема Windows для Linux + Платформа виртуальной машины) → пакет WSL с исполняемым файлом wsl.exe → состояние вашего дистрибутива. Меняется средний слой, дистрибутив и его файлы остаются на месте.
Как проверить: wsl --version печатает блок вида WSL version: 3.x.x.x, Kernel version: ..., WSLg version: .... Если номер начинается с 3. — обновление применилось. Номер 3.0.3.0 из темы подтверждайте именно этой строкой, а не по памяти (сверьтесь с документацией).
Пример: после wsl --update вывод содержит WSL version: 3.0.x.x; если осталось 2.x, значит wsl --shutdown не выполнен или обновление установилось, но терминал открыт со старым окружением — закройте и переopen Terminal.
Отдельно про режим по умолчанию для новых дистрибутивов:
wsl --set-default-version 2
Здесь важная оговорка: какое значение принимает --set-default-version в вашей сборке 3.0, в посте канала не сказано — сверьтесь с wsl --help перед выполнением.

Что сделать: убедитесь, что дистрибутив поднимается на новой подсистеме, а затем запустите Linux-контейнер внутри него.
wsl -d Ubuntu -- uname -a
wsl -d Ubuntu -- cat /etc/os-release
Зачем: первая команда подтверждает, что ядро Linux работает под управлением обновлённой подсистемы, вторая — что вы попали в нужный дистрибутив (а не в чужой по умолчанию).
Как проверить: вы увидите строку ядра с Linux и x86_64 (для x64-сборки) и поля NAME="Ubuntu", VERSION="...". Если -d Ubuntu возвращает ошибку «дистрибутив не найден», имя другое — возьмите его из колонки NAME шага 1.
Теперь проверка контейнеров. В посте канала заявлено, что WSL 3.0 поддерживает Linux-контейнеры; конкретный синтаксис запуска в вашей сборке сверьте с wsl --help и документацией, а ниже — проверка через контейнерный рантайм внутри дистрибутива:
wsl -d Ubuntu -- bash -lc "sudo apt-get update && sudo apt-get install -y docker.io"
wsl -d Ubuntu -- bash -lc "sudo service docker start"
wsl -d Ubuntu -- bash -lc "sudo docker run --rm hello-world"
Зачем: hello-world — минимальный образ, который проверяет цепочку целиком: клиент → демон → скачивание образа → запуск процесса в контейнере.
Как проверить (успех): в выводе последней команды появится Hello from Docker! и фраза This message shows that your installation appears to be working correctly. Это и есть финальный результат: Linux-контейнер отработал внутри Windows.
Пример: первые строки успешного вывода — Unable to find image 'hello-world:latest' locally, затем latest: Pulling from library/hello-world и блок приветствия. Отсутствие второй части означает, что демон не поднялся (см. ниже).
Полезно рядом: если параллельно настраиваете ИИ-инструменты в системе, см. Windows с ИИ: Copilot и нейросети в системе. Обзор самой ветки и её отличий — в гайде WSL 3.0: что нового и как обновить Linux-подсистему в Windows.
Проблема. Дистрибутив не регистрируется после установки
WslRegisterDistribution failed with error: 0x8007019edism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
После перезагрузки повторите wsl --update и wsl --install -d Ubuntu.
Проблема. Подсистема требует обновления ядра
WslRegisterDistribution failed with error: 0x800701bcwsl.exe обновлён, а пакет ядра Linux остался старым — версии не совпадают.wsl --update, затем wsl --shutdown и повторный запуск дистрибутива. Проверка — wsl --version печатает актуальный блок с Kernel version.Проблема. Контейнер не запускается
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?wsl -d Ubuntu -- bash -lc "sudo service docker start && sudo docker run --rm hello-world"
Вы зафиксировали исходную версию, обновили подсистему до ветки 3.0 и подтвердили работу Linux-контейнера внутри Windows. Дальше перенесите рабочие проекты в обновлённый дистрибутив и закрепите номер сборки в командой wsl --version в заметках команды, чтобы отслеживать следующие релизы.
Когда вышла WSL 3.0?
В посте канала точная дата не указана — сказано лишь, что релиз уже доступен для всех пользователей. Дату и номер сборки (в теме упоминается 3.0.3.0) сверьте с документацией Microsoft и выводом wsl --version.
Чем WSL 3.0 отличается от WSL 2?
Главное отличие по нашему посту — поддержка Linux-контейнеров: их можно запускать прямо в Windows через WSL. Остальные различия в посте не перечислены, поэтому не додумывайте их — сверьтесь с документацией.
Как обновиться с WSL 2 до WSL 3.0?
В администраторском PowerShell: wsl --update, затем wsl --shutdown и wsl --version. Если обновление не находится, повторите с флагом --web-download.
Что делать, если после обновления версия осталась 2.x?
Закройте все окна терминала, выполните wsl --shutdown, откройте PowerShell заново и проверьте wsl --version. Если номер не изменился, установите обновление повторно через wsl --update --web-download.