Содержание
- Способ 1: Автоматически (с параметрами по умолчанию)
- Способ 2: Вручную (+ дистрибутив Linux по выбору)
- Шаг 1: Включение аппаратной виртуализации
- Шаг 2: Активация компонентов Win 11
- Шаг 3: Апдейт ядра WSL
- Шаг 4: Определение WSL2 как версии подсистемы по умолчанию
- Шаг 5: Скачивание и инсталляция дистрибутива Linux по выбору
- Вопросы и ответы
Способ 1: Автоматически (с параметрами по умолчанию)
Ещё до выхода ОС Windows 11 механизм установки «Подсистемы Windows для Linux» (WSL2) был существенно упрощён разработчиками из Microsoft. Так, активировать в системе платформу виртуальной машины, инсталлировать саму подсистему и ядро WSL, а также развернуть дистрибутив Linux (по умолчанию – Ubuntu) возможно путём запуска всего лишь одной консольной команды. Использовать следующий подход к достижению поставленной в заголовке этой статьи цели рекомендуется в первую очередь, к тому же полученных по итогу возможностей оказывается достаточно большинству пользователей.
- Открываем интегрированное в Виндовс 11 приложение для доступа к запуску команд «PowerShell» под названием «Терминал». Выполнить это необходимо от имени Администратора, а проще всего — из меню дополнительных функций кнопки «Пуск» на «Панели задач»:
Читайте также: Как открыть приложение «Терминал» в Windows 11
- Пишем в «Терминале» команду следующего содержания:
wsl --install
- Нажимаем «Enter» на клавиатуре, чтобы отправить введённое в консоль указание на выполнение системой. Далее ждём, пока будет осуществлено поэтапное автоматизированное развёртывание в Win 11 всего необходимого для функционирования WSL2:
- Получив в консоли сообщение «Требуемая операция выполнена успешно»,
перезагружаем компьютер. С такой целью можно:
- Ввести в «Терминал» следующую команду и затем нажать «Enter» на клавиатуре:
Restart-Computer
- Или закрыть окно «Терминала» и выполнить перезапуск ПК любым привычным способом,
к примеру, через меню «Пуск» Виндовс 11.
Читайте также: Как перезагрузить компьютер под управлением Windows 11
- Ввести в «Терминал» следующую команду и затем нажать «Enter» на клавиатуре:
- По завершении перезапуска ОС
автоматически откроется окно консоли Windows, — ещё немного ожидаем, пока завершится распаковка и инсталляция дистрибутива Ubuntu в WSL 2.
- Получив приглашение «Enter new UNIX username»,
вводим в командную строку назначаемое для эксплуатации в среде Linux имя пользователя, нажимаем «Ввод» на клавиатуре.
- Далее придумываем (и запоминаем), а затем пишем в консоли пароль для доступа в установленную в WSL2 Linux (Ubuntu), передаём его системе, нажав «Enter». (Возможно, стоит обратить внимание, что вводимая секретная комбинация в Linux-системах не отображается даже завуалировано.)
- Вводим и отправляем системе пароль из шага выше повторно.
- По сути, на этом всё — WSL2 в Windows 11 установлена и запущена, а полученный с её помощью дистрибутив Ubuntu
функционирует и готов к выполнению задач пользователя.
- Впоследствии запустить WSL2 и одновременно инсталлированный в ней дистрибутив Linux можно разными путями:
- Открываем «Главное меню» Win11, перемещаемся в перечень «Все приложения»,
находим в нём название Linux-системы («Ubuntu») и кликаем по её наименованию.
- Запускаем «Терминал» (к слову, можно и классическую «Командную строку») от имени Администратора,
в качестве команды пишем название установленного в системе Linux-дистрибутива, (например,
Ubuntu
),нажимаем «Ввод» на клавиатуре.
Читайте также: Как запустить классическую «Командную строку» в Windows 11 от имени Администратора
- Запускаем выполнение консолью следующей команды:
wsl
Данное указание приводит к запуску назначенного в «Подсистеме Windows для Linux» по умолчанию дистрибутива последней.
- Открываем «Главное меню» Win11, перемещаемся в перечень «Все приложения»,
При необходимости (сразу или в дальнейшем) получения доступа к отличным от предлагаемого «Подсистемой Windows для Linux» по умолчанию Ubuntu дистрибутивам Линукс выполняем их инсталляцию одним из предложенных «Шагом 5» второго в этой статье «Способа» установки WSL 2 в Win 11.
Способ 2: Вручную (+ дистрибутив Linux по выбору)
При возникновении каких-либо проблем с установкой WSL2 в Windows 11 вышеописанным образом (либо, к примеру, желании реализовать рассматриваемую процедуру более осознанно) выполняется поэтапное развёртывание подсистемы.
Шаг 1: Включение аппаратной виртуализации
Важным требованием для запуска и эксплуатации WSL 2 в Windows 11 является доступность в системе поддержки аппаратной виртуализации. Поэтому в первую очередь проверяем факт выполненности данного условия, а в противном случае включаем указанную опцию в BIOS (UEFI) ПК. Для проверки активированности аппаратной виртуализации в Виндовс 11 проще всего будет воспользоваться функциональностью «Диспетчера задач» («ДЗ»):
- Любым способом (к примеру, из контекстного меню расположенного на «Панели задач» Win 11 элемента «Пуск» или нажав «Ctrl»+«Shift»+«Esc» на клавиатуре) запускаем «Диспетчер задач».
Подробнее: Как открыть «Диспетчер задач» в Windows 11
- Из меню разделов «ДЗ» (открывается в результате клика по трём чёрточкам вверху слева окна) перемещаемся в «Производительность».
- Кликаем «ЦП» в перечне аппаратных компонентов системы, которые мониторит «Диспетчер задач», затем перемещаемся в правую нижнюю область окна и смотрим на значение отображаемого здесь среди прочих параметра «Виртуализация».
- Если аппаратная виртуализация «Включена», можно переходить к выполнению следующего этапа реализации настоящих рекомендаций. Если же в качестве значения рассматриваемого параметра указано «Выключено», следует завершить работу компьютера, открыть программу управления параметрами BIOS и активировать опцию «Intel VT» или «AMD-V» её средствами.
Подробнее: Включаем поддержку аппаратной виртуализации в BIOS компьютера
Шаг 2: Активация компонентов Win 11
Включение WSL 2 в Windows 11 требует получения и активации двух необязательных компонентов операционной системы: самой «Подсистемы Виндовс для Линукс», а также «Платформы виртуальных машин». Реализовать это возможно двухвариантно.
Элемент «Панели управления»
Загрузку и включение практически любого необязательного компонента Windows 11 проще всего осуществлять при помощи специализированного инструментария с графическим интерфейсом, и в случае с рассматриваемой подсистемой, а также необходимой для её функционирования платформой это справедливо в полной мере.
Читайте также: Включение или отключение необязательных компонентов Windows 11
- Вызываем предназначенный для активации/деактивации компонентов Win 11 элемент «Панели управления» ОС. Один из возможных путей к данной цели:
- Прокручиваем отображаемый окном «Включение или отключение компонентов Windows» список, находим в нём «Платформа виртуальной машины»,
ставим галочку в чекбоксе слева от этой записи.
- Пролистываем перечень доступных к включению/выключению компонентов операционки далее,
отмечаем чекбокс «Подсистема Windows для Linux».
- Далее нажимаем «ОК» в окошке средства управления компонентами ОС,
ожидаем, пока Виндовс 11 автоматически выполнит необходимые для затребованной операции действия (скачает и сохранит на ПК нужные файлы).
- Получив сообщение «Windows применила требуемые изменения», кликаем «Перезагрузить сейчас» внизу отображающего его окна.
- Ожидаем окончания перезагрузки компьютера,
в её процессе будет осуществлена непосредственная интеграция «Подсистемы Windows для Linux», а также «Платформы виртуальной машины» в операционную систему.
Консоль Виндовс 11 (DISM)
Более сложный, но в некоторых случаях предпочтительный, путь к включению необходимых для функционирования WSL 2 компонентов Windows 11 осуществляется средствами программы командной строки для обслуживания образов ОС от Microsoft под названием DISM.
- Запускаем приложение «Терминал» с повышенными привилегиями (от имени Администратора).
- Копируем из текста настоящей статьи, вставляем в консоль и отправляем на выполнение команду загрузки и интеграции компонента «Подсистема Windows для Linux»:
Dism /online /Enable-Feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Ожидаем, пока в консоли заполнится процентный индикатор «Включение функций»
и затем отобразится оповещение «Операция успешно завершена».
- Далее устанавливаем компонент операционки «Платформа виртуальной машины», — команда будет следующей:
Dism /online /Enable-Feature /featurename:VirtualMachinePlatform /all /norestart
По аналогии с включением «Подсистемы Виндовс для Линукс»: отправляем команду интегрировать «Платформу виртуальной машины» на выполнение,
дожидаемся сообщения «Операция успешно завершена».
- Для завершения активации рассматриваемых компонентов Win 11, после выполнения вышеуказанного необходимо перезагрузить ПК. В текущей ситуации с такой целью проще всего будет запустить через «Терминал» следующую команду:
Restart-Computer
Дождавшись перезапуска ПК,
переходим к следующему шагу по настройке WSL2.
Шаг 3: Апдейт ядра WSL
Ещё один необходимый этап процесса установки WSL2 — это обновление ядра подсистемы. С такой целью следует задействовать специализированный и всегда доступный к загрузке с серверов Microsoft инсталлятор.
Пакет обновления ядра Linux в WSL 2 для 64-разрядных компьютеров.
- Переходим по ссылке выше, что инициирует скачивание апдейтера WSL до последней версии,
сохраняем его на диск ПК в любую папку.
- Двойным кликом в Проводнике Windows открываем полученный в результате выполнения предыдущего пункта инструкции файл wsl_update_x64.msi.
- Кликаем «Next» в отобразившемся окне Мастера инсталляции WSL Update, чтобы подтвердить запуск апдейтера,
нажимаем «Да» в ответ на запрос «Контроля учётных записей».
- Некоторое время ждём окончания процедуры копирования файлов,
кликаем «Finish» в окне с уведомлением «Completed the Windows Subsystem for Linux Update Setup Wizard».
Шаг 4: Определение WSL2 как версии подсистемы по умолчанию
Немаловажное действие на пути к результативному запуску современных дистрибутивов Linux в среде Windows 11 – это установка WSL2 в качестве используемой по умолчанию версии рассматриваемой подсистемы:
- Открываем «Терминал», вводим и отправляем на выполнение следующее указание:
wsl --set-default-version 2
- Чтобы впоследствии, после инсталляции дистрибутивов Linux проверить, какая версия WSL является установленной по умолчанию, используем такую команду:
wsl –status
Шаг 5: Скачивание и инсталляция дистрибутива Linux по выбору
После результативного прохождения рекомендованных выше четырёх этапов (или же выполнения инструкции «Способ 1» из этого материала) WSL2 в Windows 11 считается полностью подготовленной к выполнению своего предназначения. Это значит, что можно переходить к скачиванию и установке адаптированного для работы в рамках подсистемы дистрибутива Linux, — шагу, без которого интеграция и включение WSL2 по большому счёту является бессмысленной.
Вариант 1: Microsoft Store
Основной и наиболее удобный путь к получению пригодного для функционирования за счёт WSL 2 Linux-дистрибутива (или нескольких) – заключается в его загрузке и инсталляции из фирменного Магазина приложений от Microsoft.
Читайте также: Решение проблем с запуском Microsoft Store в Windows 11
- В Microsoft Store представлен целый ряд предназначенных для запуска в «Подсистеме Windows для Linux» дистрибутивов UNIX-операционки, а далее перечислены доступные на момент написания настоящей статьи прямые ссылки на их страницы в каталоге:
Ubuntu 18.04 LTS
Ubuntu 20.04 LTS
Ubuntu 22.04 LTS
openSUSE Leap 15.1
SUSE Linux Enterprise Server 12 SP5
SUSE Linux Enterprise Server 15 SP1
Kali Linux
Debian GNU/Linux
Fedora Remix for WSL
Pengwin
Pengwin Enterprise
Alpine WSL
Raft (пробная версия) - Выбираем дистрибутив из перечня выше, кликаем по соответствующей ему кнопке-ссылке, переходим на страницу продукта в Майкрософт Стор,
нажимаем на кнопку «Получить».
- Ожидаем завершения скачивания и развёртывания компонентов Linux-дистрибутива в Windows 11.
- Щёлкаем «Открыть» в окне Магазина Майкрософт,
после чего (при первом запуске инсталлированного дистрибутива Линукс) откроется окно консоли и необходимо будет подождать ещё какое-то время, пока файлы ОС распакуются и будут сохранённые в нужных папках на компьютере. (Последующие запуски Linux обычно занимают несколько мгновений).
- Когда в консоли появится приглашение «Enter new UNIX username»,
пишем имя пользователя дистрибутива Linux, нажимаем «Enter».
- Далее придумываем и дважды предоставляем системе пароль
для входа в Linux-учётку.
- На этом выбранный дистрибутив Linux считается полностью интегрированным в Windows 11, настроенным и готовым к эксплуатации.
(Впоследствии его запуск выполним одним из методов, предложенных в пункте №10 рекомендаций «Способ 1» из этого материала.)
Вариант 2: Пакеты APPX
В ситуациях, когда использовать Microsoft Store c целью получения адаптированных для работы в «Подсистеме Windows для Linux» дистрибутивов нет возможности или желания, можно пойти другим путём — скачать из сети и развернуть на компьютере APPX(AppxBundle)-пакет компонентов UNIX-операционки.
- Выбираем предполагаемый к установке в WSL 2 дистрибутив Linux в следующем списке, нажимаем на инициирующую его скачивание кнопку-ссылку:
Ubuntu
Ubuntu 22.04 LTS
Ubuntu 20.04
Ubuntu 18.04
Ubuntu 16.04
Debian GNU/Linux
Kali Linux
SUSE Linux Enterprise Server 12
SUSE Linux Enterprise Server 15 с пакетом обновления 2 (SP2)
SUSE Linux Enterprise Server 15 с пакетом обновления 3
openSUSE Tumbleweed
openSUSE Leap 15.3
openSUSE Leap 15.2
Oracle Linux 8.5
Oracle Linux 7.9
Fedora Remix for WSL - Загрузив APPX-пакет компонентов ОС Linux для WSL2 на диск компьютера, инсталлируем дистрибутив. При текущем подходе это возможно не единственным способом, выполняем один из двух следующих пунктов этой инструкции.
- Простейший (но не всегда доступный) способ установки Appx-пакетов:
- Переходим в содержащий Appx(AppxBundle)-файл каталог через Проводник Win 11.
- Немного ожидаем, затем кликаем «Установить» в окне запустившегося системного установщика пакетов.
- Вновь ждём, пока будут выполнены необходимые для развёртывания Appx манипуляции.
Дважды кликаем по значку пакета мышкой (или щёлкаем по нему правой кнопкой манипулятора и затем выбираем «Установить» в отобразившемся меню).
В результате автоматически откроется окно консоли Виндовс, где сначала завершится распаковка Linux-дистрибутива,
а затем осуществится его первый запуск.
- Другой вариант действий по развёртыванию полученного в виде APPX-файла дистрибутива Linux более сложен, но и более универсален (позволяет обойти многие, возможные к внедрению в Windows 11 ограничения):
- Открываем папку с APPX-файлом дистрибутива Linux в Проводнике Windows 11, кликаем по значку первого правой кнопкой мыши,
выбираем «Скопировать как путь» в открывшемся меню.
- Запускаем «Терминал» Win 11 от имени администратора.
- Пишем в консоли первую часть команды на развёртывание APPX-пакета в системе:
add-appxpackage
- Вторая часть команды (через пробел) – это полный путь к инсталлируемому файлу. Его мы ранее скопировали в буфер обмена Виндовс 11, поэтому просто кликаем правой кнопкой манипулятора в окне «Терминала», что приведёт к вставке данных.
- Убедившись, что сформированная в консоли команда имеет аналогичный представленному на следующем скриншоте вид, нажатием «Enter» на клавиатуре запускаем её выполнение.
- Далее ожидаем заполнения индикатора «Ход выполнения операции развёртывания»
и отображения приглашения к вводу следующих команд в консоли, после чего её можно закрыть.
- Вызываем Главное меню Виндовс 11, перемещаемся в его раздел «Все приложения», и затем находим название установленного на шаге выше дистрибутива Linux, нажимаем на него.
- Далее вновь появится окно консоли, ждём окончания процедуры «Installing…».
Вводим назначаемое пользователю запускаемой ОС имя, затем дважды – пароль. После этого развёрнутый из APPX-файла дистрибутив Линукс считается предварительно настроенным и готовым к эксплуатации.
- Открываем папку с APPX-файлом дистрибутива Linux в Проводнике Windows 11, кликаем по значку первого правой кнопкой мыши,
Вариант 3: Средства WSL2
Скачивание и инсталляцию дистрибутивов ОС Linux в Windows 11 можно выполнить и задействовав исключительно предусмотренные в WSL2 средства. Правда, выбор доступных к получению таким образом программных продуктов может показаться ограниченным.
- Запускаем «Терминал» от имени Администратора.
- Получаем доступ к списку доступных дистрибутивов для скачивания и установки средствами WSL2 Linux-дистрибутивов. Для этого вводим и отправляем на выполнение такую команду:
wsl --list --online
- Выбираем нужную ОС в полученном по результату выполнения предыдущего пункта инструкции перечне (далее необходимо будет точно ввести в консоль его наименование).
- Чтобы запустить процесс загрузки и затем инсталляции определённого дистрибутива Linux используется следующая команда:
wsl --install -d ИМЯ_ДИСТРИБУТИВА_LINUX
Вводим указание, заменив
ИМЯ_ДИСТРИБУТИВА_LINUX
на наименование ОС из полученного ранее перечня (столбец «NAME»), нажимаем «Ввод» на клавиатуре ПК. - Далее просто ждём,
по окончании скачивания и установки запустится выбранная и теперь интегрированная в WSL 2 операционная система.
Напоследок отметим, что перечень возможных к запуску в Win 11 через WSL2 дистрибутивов Linux не ограничивается представленными выше в описаниях методов их установки. Практически любые, отсутствующие среди предлагаемых рассмотренной подсистемой по умолчанию, варианты Linux запустить возможно, но для этого потребуется выполнить импорт дистрибутива или сформировать (адаптировать для использования в WSL2) его собственноручно. Такой подход несколько выходит за рамки темы этой статьи и поэтому в ней не описан, при необходимости действуем по инструкциям с интернет-ресурса Microsoft Learn:
Импорт любого дистрибутива Linux для использования с WSL
Создание пользовательского дистрибутива Linux для WSL
Table of Contents
Зачем нужен Windows Subsystem for Linux 2 (WSL2)? Самый частый ответ — простое использованое Linux программ в среде Windows. Docker самая распространенная причина для установки WSL2.
Что надо для WSL2
- убедиться что в BIOS включена виртуализация, ищите пункт меню:
- процессор Intel: VT-x, Intel Virtualization Technology, VTx
- процессор AMD: SVM Mode, AMD-V, Virtualization Technology
- версия Windows 11 или 10 не ниже версии 2004 (сборка 19041 ~декабрь 2019)
- права администратора
Всего несколько команд
Установим само ядро wsl и запустим дистрибутив Ubuntu для работы в консоли.
Открывайте PowerShell с правами Администратора. Самый простой вариант по мне -> WIN+X и выбрать Терминал Windows (Администратор).
Выполняйте команду:
По-умолчанию, установится WSL2 с GUI и Ubuntu . Установка займет определенное время, подождите.
Если ошибка 0x80072eff
В процессе, можете увидеть ошибку Во время установки произошла ошибка, но установка может быть продолжена. Компонент: 'Ядро WSL' код ошибки: 0x80072eff
.
А значит, все автоматически не сработало, не беда. Перезагружайтесь и снова запустите PowerShell от Администратора.
- Запустите обновление wsl
- Завершите работу wsl
- Запустите заново wsl
- Запустите установку Ubuntu (если надо более специфический дистр, посмотрите все варианты
wsl -l -o
)
Успешная установка Ubuntu
После установки, введите имя пользователя и пароль для Ubuntu, и вам будет доступна среда Linux.
Рекомендуется сделать одну команду, обновить список пакетов:
и наслаждаться
Как зайти в WSL консоль
- запускайте команду
wsl
. (например, в настройках среды разработки указать wsl это для терминала по-умолчанию) - можете вынести из Пуска, ярлык Ubuntu на панель задач.
- или поставить обновленный Microsoft Terminal, и в нем настроить при запуске сразу открывать консоль wsl, рекомендую.
1.2K
показов
1.9K
открытий
Сегодня покажу как поставить WSL (Windows Subsystem for Linux) на Windows 11
В этой статье вы узнаете:
- Что такое WSL и для чего она нужна
- Гайд по установке WSL
- Настройка компилятора
- Что делать, если WSL потребляет избыточное количество оперативной памяти
Что такое WSL и для чего она нужна
WSL (Windows Subsystem for Linux) — это среда выполнения Linux, предоставляемая операционной системой Windows. WSL позволяет запускать исполняемые файлы Linux напрямую в Windows без необходимости установки отдельной виртуальной машины или перезагрузки компьютера.
WSL обеспечивает совместимость с ядром Linux, что позволяет пользователям запускать большинство командной строки и приложений Linux непосредственно в Windows. Оно включает в себя поддержку большинства дистрибутивов Linux, таких как Ubuntu, Debian, Fedora и других, и предлагает доступ к огромному количеству программ и утилит, которые разработаны для Linux.
Теперь перейдём к гайду
Гайд по установке WSL
Открываем PowerShell или Terminal от имени администратора
Вводим следующую команду: wsl —install
Ждём
По завершении установки перезагружаем наш ПК.
Мне нравится Ubuntu, поэтому я не буду её менять, но если ты хочешь поменять дистрибутив, то вот ссылка на инструкцию.
Теперь после установки WSL необходимо создать учетную запись пользователя и пароль для установленного дистрибутива Linux (в моём случаи речь идёт про Ubuntu):
На случай, если что-то пошло не так на этапе создания учётной записи вот мини-туториал как это можно исправить.
Важный нюанс: Windows не выполняет автоматическую установку обновлений или обновление дистрибутивов Linux. Это задача, выполнение которой большинство пользователей Linux предпочитают контролировать самостоятельно. Поэтому обновим нашу подсистему с помощью этой команды: sudo apt update && sudo apt upgrade
Настройка компилятора
Я использую WSL, чтобы компилировать программы на языке С, поэтому покажу команды для установки компилятора.
По очереди:
sudo apt-get update
sudo apt-get install cmake gcc clang gdb build-essential
sudo apt-get install valgrind
Важный момент: Проверим, установился ли у нас компилятор, должен появится номер: gcc —version
Что делать, если WSL потребляет избыточное количество оперативной памяти
Бонусом, я покажу, как снизить потребление оперативной памяти нашей подсистемой:
Есть два пути
Путь первый:
Открываем командную строку от администратора и вставить команду
wsl —shutdown, эта команда завершит процесс VmmemWSL.
Чтобы легко открыть командную строку можно зажать кнопки Win + X > пункт PowerShell (Администратор) > команда start cmd > нажимаем Enter.
Путь второй:
Можно также ограничить ресурсы Vmmem путем создания файла %UserProfile%\.wslconfig, внутри которого прописать:
[wsl2]
memory=2GB # Ограничиваем память для WSL2 VM.processors=5 # Ограничиваем количество процессов для WSL2 VM.
Чтобы создать файл с названием .wslconfig — нужно открыть блокнот Win + R > notepad > вставить содержимое > Сохранить как > в Тип файла указать Все файлы, после указать название и сохранить.
Кстати говоря, в этом файлике можете попробовать поставить значение memory равное 1, может ещё меньше будет))
На этом у меня всё, надеюсь моя статья помогла тебе решить твою проблему))
Благодарю за прочтение!
Windows Subsystem for Linux (WSL) is a Windows feature that allows developers or testers to run native Linux apps, write scripts, and run bash commands directly from Windows. Starting with Windows 10 (2004) WSL 2 is available which uses a full-featured Linux kernel. It allows running apps or Docker containers, has a high load speed, consumes fewer resources, and supports background management, and kernel updates. Thus, you can run ELF64 apps able to access the Windows file system without using third-party ports (like Cygwin).
A Linux kernel (v4.19) image in Windows 10 is a lightweight virtual machine. To run it, you don’t need to install a full Hyper-V role. Linux system calls are translated into Windows calls on the fly without using any emulator (unlike WSL1).
By default, WSL is disabled. To enable it, open Start -> Control Panel -> All Control Panel Items -> Programs and Features -> Turn Windows features on or off, check Windows Subsystem for Linux, click OK, and restart your computer.
You can enable WSL feature on Windows 10/11 using DISM:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
or PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
To install WSL in Windows Server 2022 or 2004+ Semi-Annual Channel (SAC), use the Install-WindowsFeature cmdlet:
Install-WindowsFeature -Name Microsoft-Windows-Subsystem-Linux
Then you need to restart your computer.
Intel VT (Intel Virtualization Technology) or AMD-V support must be enabled in the BIOS/UEFI settings of your computer.
Then update WSL to version 2. To do it, go to https://docs.microsoft.com/windows/wsl/wsl2-kernel, download wsl_update_x64.msi, and install it.
To make WSL2 a default architecture for new Linux distros, run the following command:
wsl --set-default-version 2
Then open Microsoft Store and enter “Linux” in the search bar. Select the distro you need from the list. Ubuntu, Debian, Kali Linux, SUSE Linux Enterprise Server15, openSUSE Leap 15-1, Fedora Remix for WSL, and others are available. In our example, we will use Ubuntu 20.04 LTS. Then click Get.
If you have Microsoft Store disabled or you want to install a WSL on the Windows Server Core edition, you can download an Ubuntu WSL image using the Invoke-WebRequest PowerShell cmdlet:
Invoke-WebRequest https://aka.ms/wslubuntu2004 -OutFile ubuntu-2004.zip –UseBasicParsing
Extract the archive with PowerShell:
Expand-Archive -Path .\ubuntu-2004.zip
Run the installation of the Linux image using the Ubuntu.exe file.
You can also download the image as an appx file and install it using Add-AppxPackage
cmdlet.
After the installation, you can view the installed WSL version using this command:
wsl --list –-verbose
If your Linux environment has version 1, you need to change it to WSL2:
wsl --set-version Ubuntu-20.04 2
A virtual hard disk file with the OS Linux Ubuntu 20.04 is located in the user profile: C:\Users\username\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState
.
After the distribution has been installed, its icon appears in the Start menu. To start Ubuntu, open the Start menu, click its icon and the Bash shell will open. You can also start WSL using the wsl
command. The first time you run the image, you will be prompted to create a user and password. To run commands as root, use an additional key (prefix): sudo
. WSL has common commands for Bash and CMD, and you should remember that Linux is case-sensitive.
You can run Linux commands in CMD. To do it, you must first specify WSL. For example, to view the list of files and folders in your Windows directory, run the following commands:
wsl
ls /mnt
ls/mnt/c
wsl ls ‑la /proc/cpuinfo
wsl ls ‑la “/mnt/c/Program Files”
You can also open Windows Explorer using explorer.exe, Calculator (calc.exe), Notepad (notepad.exe), Paint (mspaint.exe), Calendar (cal), and Weather (curl wttr.in
).
Another useful feature: you can open a WSL file from Windows using its system path. To do it, enter the file path in CMD:
notepad \\wsl$\Ubuntu-20.04\home\1122.txt
You can update the list of Ubuntu packages from the console using the following commands:
sudo apt-get update
sudo apt-get upgrade
After the update, the …/LocalState folder will take up 1.5 GB.
From the Linux command prompt, you can view Windows files and folders, and access them. To make it more convenient to copy files, view directories and their contents, install Midnight Commander using the following command:
sudo apt-get install mc
You can run Midnight Commander both in Bash and in CMD. The screenshot below shows that both MC panels display the list of files from both OSs.
You can display network settings (an IP address) of your WSL subsystem:
ip addr | grep eth0
Apps with graphic interfaces don’t work in WSL. However, you can try to install and use them. To run graphic apps in Linux, download and install VcXsrv Windows X Server (https://sourceforge.net/projects/vcxsrv/) on Windows.
Use the apt-get package manager to install graphic apps. For example, a browser, a text editor, or anything else:
sudo apt-get install gedit
sudo apt-get install firefox
sudo apt-get install x11-app
Then create a file in the root directory:
cd /~
vim .bash_login
Add the following line:
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0
and save the file:
Esc -> :wr -> :q
Then you can run graphic Linux apps in WSL using the commands:
firefox
or
gedit
You can install multiple Linux distros on Windows 10/11 and run them simultaneously in different WSL spaces. You can display the list of all installed WSL distros in Windows with the command:
wsl --list –all
To stop all running Linux distributions and the WSL2 kernel, run the following command:
wsl --shutdown
2.0.4
- Resolve potential crash in wslservice.exe
- Implement /usr/bin/wslinfo binary for querying various state, added
--networking-mode
argument
wslinfo usage:
--networking-mode
Display current networking mode.
-n
Do not print a newline.
2.0.3
- Fix issue when upgrading from 2.0.1 (solves #10560)
- Continue if unable to reclaim memory. (solves #10534)
2.0.2
- Create a specialized error code when WSL is called from LocalSystem
- Fix same version installs and downgrade (solves #10527)
- Fix upgrade issue caused by setting REINSTALLMODE (solves #10539)
- Fix race condition causing WslInstaller crash
2.0.1
- Mount cgroupv2 at /sys/fs/cgroup if cgroupv1 is disabled (solves #10497)
- Conditionally write the explorer extensions registry keys (solves #9231)
- Don’t try to inherit the same handle twice (solves #10488)
- Fix parsing of ‘0GB’ memory strings (solves #10503)
- Update WSLg to 1.0.58
2.0.0
- Added support for new opt-in experimental features to
%USERPROFILE%\.wslconfig
. For full info see the WSL docs update: https://aka.ms/wslsep2023updatedocspage- experimental.autoMemoryReclaim — Makes the WSL VM shrink in memory as you use it by reclaiming cached memory
- experimental.networkingMode — A new networking mode for WSL that adds new features and improves network compatibility
- experimental.dnsTunneling- Changes how WSL resolves DNS requests to improve network compatibility
- experimental.firewall- Applies Windows firewall rules to WSL, and allows for advanced firewall controls for the WSL VM
- experimental.autoProxy- Makes WSL automatically use the proxy information from Windows to improve network compatibility
[experimental]
autoMemoryReclaim=gradual | dropcache | disabled
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true
- Store WSL is now accessible from Session 0 (solves #9231)
- All binaries shipped in the WSL package are now signed
- Introduce
experimental.autoMemoryReclaim
setting to%USERPROFILE%\.wslconfig
- Prompt the user to enable VMP if HNS isn’t available on the machine
- Fix localhost relay failing if ipv6 is disabled
- Improve error message for WSL1 disabled policy to provide upgrade instructions
- Fix microk8s scenario for mirrored networking
- Create shared mounts when init sets up the distro namespace (solves #10410)
- Detach user block devices before terminating the VM
- Protect ‘.wslconfig’ from being incorrectly translated
- Add logic to generate a systemd unit to protect the binfmt interpreter (solves #8843)
- Fix potential wslservice.exe crash.
- Retry plan9 mounts on IO error
- Update Microsoft.WSL.Kernel version 5.15.123.1-1
- Display a notification prompting the user to install missing optional components
- Add
--manage <distro_name> --set-sparse
to wsl.exe - Fix various issues with the ‘Update available’ notification logic
- Update WSLg to 1.0.57
- WSL GUI apps now have Windows snapping with the keyboard (Press WIN + an arrow key to snap to the side)
- Update MSRDC to 1.2.4485
1.3.17
- Update MSRDC to version 1.2.4485
- Update WSLg to 1.0.57
1.3.15
- Update Microsoft.WSL.Kernel to version 5.15.90.4-1
1.3.14
- Update Microsoft.WSL.Kernel to version 5.15.90.3-1
- Update MSRDC to 1.2.4419
- Update Microsoft.WSLg to version 1.0.55
- Fix /run/user/ being hidden when a new login session is created by symli… (solves #10205)
- Implement a —no-distribution option in wsl —install
1.3.11
- Switch back to previous version of lxutil.dll while an issue is being debugged
1.3.10
- Mount /usr/lib/wsl/lib as rw
- Set a timeout when force terminating instances
- Allow created vhdx to have sparse flag set
- Make /run/user/{user} writable
- Memory reclamation idle detection, drop_caches. To use add the below to
%userprofile%\.wslconfig
[experimental]
autoMemoryReclaim=true
- Fix COM race condition when service is stopped
- Install missing optional components if needed in
wsl.exe --install
- Fix potential wslservice crash in .wslconfig parsing
- Use —numeric-owner when importing and exporting distros so the root namespace /etc/passwd is not used (solves #9982)
- Update invalid wslconfig key warning to call out which key has the invalid value
- Change localhost relay creation to be non-fatal (solves #9924)
- Fix behavior of guiApplications=false in .wslconfig
- Fix intermittent localhost forwarding issues (Solves #9921)
- Use /mnt/wslg for /run/user (solves #9913)
- Update Microsoft.WSL.Kernel to version 5.15.90.2-3
- This new kernel includes a SCSI fix that allows WSL to boot faster
- Update Microsoft.WSLg to version 1.0.54
- Update MSRDC to 1.2.4240
- Update Microsoft.DXCore.Linux to version 10.0.25880.1000-230602-1350.main