Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Sign up
Среда Windows Subsystem for Linux (WSL) позволяет запускать нативные приложения, писать скрипты, выполнять команды и скрипты Linux непосредственно из Windows без использования эмуляторов или развертывания выделенных виртуальных машин. Актуальной версией среды является WSL 2, в которой используется полноценное ядро Linux (версия ядра 5.15) и обеспечивает полную совместимость с системными вызовами. Образ ядра Linux в WSL представляет собой легкую виртуальную машину, для запуска которой не нужно устанавливать полноценную роль Hyper-V.
Содержание:
- Как установить Windows Subsystem for Linux (WSL2)?
- WSL: Установка дистрибутива Linux в Windows
- Команды для управления WSL в Windows
- Использование Linux в среде WSL
Вы можете запустить WSL 2:
- Во всех версиях Windows 10, начиная с 1903, а также в Windows 11 и Windows Server 2022;
- В настройка BIOS/UEFI компьютера должна быть включена поддержка аппаратной виртуализации: Intel VT (Intel Virtualization Technology) или AMD-V (SVM Mode).
Как установить Windows Subsystem for Linux (WSL2)?
Компонент WSL по умолчанию отключен в Windows. Современных дистрибутивах Windows 10 и Windows 11 для установки среды WSL достаточно выполнить команду:
wsl --install
Этак команда автоматически включит все необходимые компоненты Windows, необходимые для работы WSL, установить обновление ядра Linux для WSL2, загрузит дистрибутив Ubuntu (по-умолчанию) и установит его в WSL.
Осталось перезагрузить компьютер, и вы можете запускать среду WSL!
Вы можете установить для WSL другой дистрибутив Linux. Выведите список доступных дистрибутивов:
wsl --list --online
Укажите имя дистрибутива Linux, который установить в WSL. Например:
wsl --install -d kali-linux
Если в BIOS/UEFI компьютера не включена виртуализация, при установке WSL вы получите ошибку:
Installation failed with error 0x80070003 or error 0x80370102” it means that Bios Level Virtualization is not enabled on your computer.
Вы можете установить WSL2 в Windows вручную. Для этого придется вручную последовательно выполнить все этапы, который команда wsl —install запускала автоматически:
- Установить WSL
- Включить компонент виртуалзации VirtualMachinePlatform
- Установить ядро WSL 2
- Скачать и установить дистрибутив Linux для WSL
Сначала установите следующие компоненты Windows:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
Перезагрузите компьютер.
Скачаем и установим обновление ядра Linux для WSL2 (WSL2 Linux kernel update package for x64 machines — https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi). Можете скачать пакет вручную или с помощью PowerShell:
Invoke-WebRequest -Uri https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi -OutFile "$($env:userprofile)\Downloads\wsl_update_x64.msi" -UseBasicParsing
Invoke-Item "$($env:userprofile)\Downloads\wsl_update_x64.msi"
rm "$($env:userprofile)\Downloads\wsl_update_x64.msi"
Еще раз перезагрузите компьютер и назначьте версию WSL 2 в качестве среды по-умолчанию:
wsl --set-default-version 2
WSL: Установка дистрибутива Linux в Windows
После того, как ядро WSL установлено в Windows, вы можете установить один или несколько дистрибутивов Linux на компьютер.
Можно установить пакет с дистрибутивом Linux через Microsoft Store. Доступны следующие дистрибутивы:
- Ubuntu
- Debian
- Kali Linux
- OpenSUSE
- Oracle Linux
- SUSE Linux Enterprise Server
- Fedora
Найдите нужную версию дистрибутива в Store и установите ее, нажав кнопку Получить (Get).
Если у вас отключен Windows Store, вы хотите установить дистрибутив WSL в Core редакции Windows Server или вам нужно установить WSL на Изолированном от интернета компьютере (оффлайн), вы можете скачать дистрибутив Ubuntu с помощью PowerShell командлета Invoke-WebRequest:
Invoke-WebRequest https://aka.ms/wslubuntu2204 -OutFile ubuntu-2204.appx –UseBasicParsing
Установите пакет для WSL с помощью:
Add-AppxPackage .\ubuntu-2204.appx
После окончания установки появится окно, в котором вам будет предложено указать имя пользователя и пароль для вашего дистрибутива.
После установки вы можете в меню Пуск появится отдельная программа для запуска Linux.
Также вы можете запустить ваш Linux из отдельной вкладки Windows Terminal или с помощью команды
wsl
.
Команды для управления WSL в Windows
Рассмотрим основные команды для управления ядром и дистрибутивами Linux в WSL.
Проверить текущую версию ядра WSL:
wsl --version
Обновить ядро WSL вручную:
wsl --update
Откатится к предыдущему ядру WSL:
wsl --update rollback
Вывести список установленных версий Linux:
wsl --list
Вывести дистрибутив Linux, который используется по-умолчанию:
wsl --status
Дистрибутив Linux по-умолчанию в WSL можно изменить:
wsl --setdefault Ubuntu
Запустить определенный дистрибутив в WSL:
wsl -d kali-linux
Завершить среду WSL:
wsl --shutdown
Можно войти в WSL Ubuntu под root и сбросить пароль:
ubuntu config --default-user root
Passwd
Вернуть пользователя по умолчанию
ubuntu config --default-user your_username
Для настройки параметров WSL и дистрибутивов Linux используются конфиг файлы:
- wsl.conf – файл с настройками конкретного дистрибутива Linux (находится в директории /etc)
- .wslconfig – глобальные настройки WSL, которые применяются ко всем дистрибутовам (находится в профиле пользователя в
%UserProfile%
)
Например, если вы хотите ограничить использование оперативной памяти и CPU компьютера дистрибутивами Linux в WSL, создайте такой файл
%UserProfile%\.wslconfig
:
[wsl2] memory=2GB processors=2
Использование Linux в среде WSL
Дистрибутив Linux, установленный в WSL является полноценной операционной системой. Поэтому после установки рекомендуется выполнить обновление пакетов. Для Ubuntu выполните команду:
$ sudo apt-get update && sudo apt-get upgrade -y
Файловая система вашего дистрибутива Linux хранится в профиле пользователя в виде VHDX файла. Например, виртуальный диск Ubuntu хранится в папке
%USERPROFILE%\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState
Файловая система Linux в WSL монтируется в виде сетевой папки прямо в проводник Windows.
Также для прямого доступа к файлам WSL из Windows можно использовать UNC путь. Например:
notepad \\wsl$\Ubuntu\sysops\home\1122.txt
В свою очередь локальные диски Windows монтируются в WSL в папку mnt. Вывести список файлов папок на диске C:
wsl
ls /mnt
ls/mnt/c
Другие примеры запуска Linux команд из Windows:
dir | wsl grep Sa
wsl ls ‑la > 123.txt
wsl ls ‑la /proc/cpuinfo
wsl ls ‑la “/mnt/c/Program Files”
Вы можете установить любые пакеты в Linux. Например, установите файловый менеджер Midnight Commander:
$ sudo apt-get install mc
В современной версии WSL 2 вы можете запускать из Windows любые приложения Linux с графическим интерфейсом (X11 и Wayland). Например, установите графический редактор:
$ sudo apt install gimp -y
Чтобы запустить его из Windows просто выполните команду:
wsl gimp
Все способы:
- Способ 1: Апплет «Программы и компоненты»
- Способ 2: Утилита «DISM»
- Способ 3: Команда установки
- Дополнительные рекомендации
- Вопросы и ответы: 0
WSL, или «Подсистема Windows для Linux», представляет собой встроенную функцию Windows 10, позволяющую запускать в Windows-среде консольные и графические приложения Linux. Существуют два основных способа установки данного компонента.
Способ 1: Апплет «Программы и компоненты»
Данный способ является устаревшим, он использовался, когда Windows 10 (версия 20H2) еще не поддерживала установку WSL через консоль.
- Вызовите нажатием клавиш Win + R диалоговое окошко быстрого запуска приложений и выполните в нем команду
optionalfeatures
, чтобы запустить апплет «Программы и компоненты». - Отыщите в списке компонентов «Платформа виртуальной машины» и «Подсистема Windows для Linux», включите их и нажмите кнопку «ОК».
Для применения конфигурации и установки компонентов потребуется перезагрузка компьютера.
- Запустите встроенное приложение «Microsoft Store», найдите через поиск нужный дистрибутив Linux и установите его. Процедура установки практически ничем не отличается от инсталляции других UWP-приложений, разве что занимает больше времени.
Запустить установленную Linux можно будет из меню «Пуск», как и всякое другое приложение. В настоящее время в магазине Windows доступны несколько популярных Linux-дистрибутивов, в частности Ubuntu, openSUSE Leap, SUSE Linux Enterprise, Kali Linux, Debian и некоторые другие.
Способ 2: Утилита «DISM»
Этот способ дублирует предыдущий, разница лишь в том, что необходимые компоненты устанавливаются через консоль.
- Запустите от имени администратора «PowerShell» из контекстного меню кнопки «Пуск». Вместо «PowerShell» можно использовать классическую «Командную строку».
- Выполните одну за другой следующие две команды:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Вместо указанных выше, вы также можете использовать команды Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
и Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
(в «PowerShell») — результат будет тот же. Для применения настроек потребуется перезагрузка компьютера, после чего можно устанавливать дистрибутивы Linux из магазина Windows.
Способ 3: Команда установки
Все новые версии и сборки Windows 10 поддерживают установку WSL одной командой. Этот способ является наименее затратным по времени и наиболее простым.
- Запустите от имени администратора «PowerShell» или «Командную строку».
- Выполните команду
wsl --install
.
Windows 10 сама включит необходимые компоненты и установит актуальную на текущий момент версию подсистемы. Также автоматически будет загружен и установлен дистрибутив по умолчанию – Linux Ubuntu. Чтобы установить другой дистрибутив, сделайте следующее:
- Сначала выведите в запущенной консоли список доступных дистрибутивов командой
wsl --list --online
. - Установите WSL c нужным дистрибутивом, выполнив команду
wsl --install -d name
, где name – название дистрибутива.
Дополнительные рекомендации
После установки WSL рекомендуется выполнить некоторые настройки и проверить доступность обновлений подсистемы.
- На момент написания этой инструкции существуют две версии «Подсистемы Windows для Linux» – 1.0 и 2.0. Проверить версию установленной подсистемы можно командой
wsl -l -v
в запущенной «PowerShell». - Установите последние обновления подсистемы, выполнив в запущенной с правами администратора консоли команду
wsl --update
. - Чтобы инсталлировать вторую версию используемой по умолчанию, выполните команду
wsl --set-default-version 2
. - Скачайте и установите обновление ядра Linux для WSL2 с сайта Microsoft.
Скачать обновление ядра WSL2 с официального сайта - Инсталлятор представлен исполняемым файлом MSI – запустите его двойным кликом и проследуйте указаниям мастера.
Если при инсталляции обновления ядра появится ошибка, вероятнее всего, версия Windows 10 не поддерживает данное обновление. В этом случае рекомендуется сначала установить последние обновления для самой операционной системы.
Читайте также: Обновление Windows 10 до последней версии
Наша группа в TelegramПолезные советы и помощь
В последних сборках Windows Insider Preview вы можете установить все необходимое для запуска WSL, просто выполнив wsl.exe —install. Мы рады сообщить, что эта функция теперь официально перенесена в Windows 10 версии 2004 и выше, что значительно упростит установку WSL в этих сборках.
Использование wsl —install
Раньше процесс настройки WSL был слишком сложным и требовал включения нескольких параметров и установки нескольких пакетов. Мы упростили процесс до одной команды: просто откройте окно командной строки с правами администратора и запустите wsl.exe —install. После того, как вы нажмете Enter, процесс автоматически включит необходимые дополнительные функции WSL, установит дистрибутив Ubuntu по умолчанию и установит последнюю версию ядра WSL Linux на ваш компьютер. Когда он будет завершен и вы перезагрузите компьютер, ваш дистрибутив запустится после того, как вы снова загрузитесь, завершив установку.
Кроме того, вы можете найти список доступных для установки дистрибутивов Linux, введя команду wsl —list —online в PowerShell или командной строке Windows. Чтобы установить дистрибутив, отличный от стандартного для Ubuntu или в дополнение к нему, используйте эту команду: wsl —install -d <DistroName>
Замените <DistroName> именем дистрибутива Linux, найденным в предыдущей команде list. Эту команду установки можно использовать для первой установки или для добавления дополнительных дистрибутивов после того, как у вас уже установлен WSL с дистрибутивом Ubuntu по умолчанию.
Дополнительные команды
Мы также добавили несколько дополнительных команд, которые помогут вам управлять своими экземплярами WSL.
Вы можете использовать wsl —update, чтобы вручную обновить ядро WSL Linux, и вы можете использовать wsl —update rollback для отката к предыдущей версии ядра WSL Linux.
Наконец, вы можете использовать wsl —status для просмотра общей информации о вашей конфигурации WSL, такой как тип дистрибутива по умолчанию, дистрибутив по умолчанию и версия ядра.
Обновите версию Windows 10 для поддержки этих команд
Вы можете получить все это, просто обновив Windows, как обычно. Чтобы сделать это вручную, откройте настройки Windows, перейдите в «Обновления и безопасность» и нажмите «Проверить наличие обновлений».
Это обновление является частью KB5004296. На момент написания, когда вы нажмете «Проверить наличие обновлений», вы можете увидеть доступное дополнительное обновление, убедитесь, что оно имеет тот же номер, что и KB5004296, установите его, и вы получите доступ к wsl —update.
На моём компьютере установлена операционная система «Windows 10». Официально она появилась в 2015 году. В 2016 году разработчики из компании «Microsoft» выпустили в свет подсистему «Windows Subsystem for Linux» (сокращенно «WSL»), с помощью которой можно запускать программы, созданные для работы в операционных системах «Linux», в операционных системах «Windows», начиная с последних версий «Windows 10» и версий, следующих после «Windows 10».
Википедия:
https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux
https://ru.wikipedia.org/wiki/Windows_Subsystem_for_Linux
Документация на сайте компании «Microsoft»:
https://learn.microsoft.com/en-us/windows/wsl/
Первая версия WSL называется, естественно, «WSL 1». В 2019 году вышла «WSL 2», которая по заверениям разработчиков радикально улучшила быстродействие и вообще получила довольно сильно переработанную архитектуру по сравнению с «WSL 1». Я уже давно хотел поработать с этой подсистемой, чтобы с помощью нее познакомиться с каким-нибудь из дистрибутивов семейства операционных систем «Linux». И вот сейчас руки дошли.
Для работы в командной строке из операционной системы «Windows 10» я в основном использую программу-оболочку «PowerShell» версии 7 из программы-«эмулятора терминала» «Windows Terminal» версии 1.17.
Определение версии операционной системы «Windows 10»
Имеет смысл сначала определить, какая у вас версия операционной системы «Windows 10», так как для установки WSL на разных версиях операционной системы «Windows 10» может потребоваться разный порядок действий.
PS C:\> [System.Environment]::OSVersion.Version Major Minor Build Revision ----- ----- ----- -------- 10 0 19045 0
Как видно из блока кода выше, у меня — сборка (build) 19045. В документации сказано, что для сборок с номером равным или выше 19041 можно применять рекомендуемый порядок установки WSL (описан тут), для сборок с номером меньшим, чем 19041, следует воспользоваться отдельной статьей документации.
Команда «wsl.exe»
Для установки WSL и работы с нею в операционной системе «Windows 10» есть специальная команда — wsl
(wsl.exe). Насколько я понимаю, эта не сама подсистема WSL, а только программа для облегчения работы с этой подсистемой. То есть подсистема WSL у меня еще не установлена, а команда wsl
уже доступна. Эту команду можно запустить из любого местоположения.
Если запустить эту команду из командной строки без аргументов, то она выдаст короткий текст с объяснением, как ею пользоваться и названиями возможных аргументов. В частности, можно сразу просмотреть список дистрибутивов операционной системы «Linux», доступных к скачиванию через интернет с помощью команды wsl
:
PS C:\> wsl --list --online Ниже приведен список допустимых распределений, которые можно установить. Распределение по умолчанию помечено знаком «*». Установите с помощью команды wsl --install -d <Distro> NAME FRIENDLY NAME * Ubuntu Ubuntu Debian Debian GNU/Linux kali-linux Kali Linux Rolling Ubuntu-18.04 Ubuntu 18.04 LTS Ubuntu-20.04 Ubuntu 20.04 LTS Ubuntu-22.04 Ubuntu 22.04 LTS OracleLinux_8_5 Oracle Linux 8.5 OracleLinux_7_9 Oracle Linux 7.9 SUSE-Linux-Enterprise-Server-15-SP4 SUSE Linux Enterprise Server 15 SP4 openSUSE-Leap-15.4 openSUSE Leap 15.4 openSUSE-Tumbleweed openSUSE Tumbleweed
Под словом «распределение», как я понимаю, имеется в виду «дистрибутив». Вероятно, это следы работы гениального искусственного интеллекта, который скоро заменит всех переводчиков и программистов… если верить жёлтой прессе.
Как видно из блока кода выше, по умолчанию к установке предлагается дистрибутив «Ubuntu» из семейства операционных систем «Linux». Это меня устраивает. Судя по сравнительным спискам в интернетах, дистрибутив «Ubuntu» на сегодня входит в семерку самых популярных дистрибутивов «Linux», а среди рекомендуемых для начинающих — в тройку самых популярных.
Запуск установки WSL
В руководстве по установке WSL сказано, что эту подсистему можно установить одной-единственной командой. Для этого программа-оболочка должна быть открыта с правами администратора операционной системы «Windows 10»:
(админ) PS C:\> wsl --install
Эта команда выполняет ряд действий, которые перечислены в документации. (Эти действия можно было бы выполнить самостоятельно и тогда можно было бы не использовать указанную выше команду. Однако, мне было интересно попробовать рекомендуемый способ установки WSL.)
В частности, эта команда включает две компоненты операционной системы «Windows 10», которые по умолчанию выключены. Это «Virtual Machine Platform» (по-русски «Платформа виртуальной машины») и «Windows Subsystem for Linux» (WSL, по-русски «Подсистема Windows для Linux»). Я проверил их включение после окончания работы вышеуказанной команды и перезагрузки компьютера. Это можно проверить, открыв инструмент «Панели управления», который называется «Включение или отключение компонентов Windows» (если в вашей операционной системе для интерфейса выбран русский язык):
Кроме включения этих двух компонентов операционной системы «Windows 10» вышеуказанная команда скачивает из хранилища в интернете дистрибутив «Ubuntu» (или другой, если выбран другой) семейства операционных систем «Linux» и выполняет другие действия. Всё это занимает минут 20-30, так что можно пойти выпить чашечку кофе. Вот что у меня получилось в итоге:
Перезагрузка компьютера у меня не запустилась автоматически, поэтому я закрыл все окна и запустил ее вручную. После перезагрузки открылось следующее окно:
Включение виртуализации в BIOS
Как было показано выше, у меня установка WSL с одной-единственной команды не получилась. (Вернее, всё установилось успешно, но я не ожидал, что еще потребуется дополнительная настройка.) Я прошел по предложенной в сообщении об ошибке ссылке (https://aka.ms/enablevirtualization) и попал в руководство по ошибкам установки при установке WSL, в раздел соответствующей ошибки:
https://learn.microsoft.com/en-us/windows/wsl/troubleshooting#error-0x80370102-the-virtual-machine-could-not-be-started-because-a-required-feature-is-not-installed
В принципе, две возможные причины этой ошибки уже перечислены в сообщении на иллюстрации выше. Компонента операционной системы «Windows 10» с названием «Платформа виртуальной машины» у меня точно включена, я это описал выше. Значит, не включена так называемая «аппаратная виртуализация» (эта функция процессора включается в BIOS).
Продолжение следует…