Среда 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
How to Update from WSL to WSL 2 in Windows 10
Microsoft has ported WSL 2 to Windows 10 version 1909, and version 1903. Initially, it was exclusively available in Windows 10 version 2004. Now users who have installed two older releases of the OS can upgrade Windows Subsystem for Linux to the latest generation and get benefits from using it.
WSL 2 is a new version of the architecture that powers the Windows Subsystem for Linux to run ELF64 Linux binaries on Windows. This new architecture changes how these Linux binaries interact with Windows and your computer’s hardware, but still provides the same user experience as in WSL 1 (the current widely available version).
It ships a real Linux kernel with Windows that will make full system call compatibility possible. This is the first time a Linux kernel is shipped with Windows. WSL 2 uses the latest virtualization technology to run its Linux kernel inside of a lightweight utility virtual machine (VM). In order to make it available for more Windows 10 users, Microsoft has made it available for two previous releases of the OS.
All its key features will be available, including
- File system performance now on par with Mac and Linux speeds
- Improved System Call Support for all Linux applications notably: Docker, FUSE, rsync, etc.
- Full Linux kernel
- Docker Desktop has added support to use WSL 2 as its engine
Builds 18362.1049
and 18363.1049
or higher are required to get WSL2 working. They are released with KB4571748.
Updating from WSL to WSL 2 will require you to perform these steps
- Enable the Windows Subsystem for Linux
- Enable the Virtual Machine Platform optional feature
- Download the Linux kernel update package
- Set WSL 2 as your default version
- Install a Linux distro inside it.
- Open PowerShell as Administrator.
- To install WSL, run this command:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart.
- Enable the Virtual Machine Platform optional feature by running the following command:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- Restart Windows 10.
- Download the latest Linux kernel update package and install it: WSL2 Linux kernel update package for x64 machines
- Set WSL 2 as your default version. Open PowerShell as Administrator and run:
wsl --set-default-version 2
. - You can now install WSL 2 distros from the Microsoft Store (see the note).
You are done!
Note: Some of the legacy WSL distros are not designed to run under WSL 2. You need to uninstall them manually. Here is the list of WSL 2 -compatible distros.
- Ubuntu
- Ubuntu 16.04 LTS
- Ubuntu 18.04 LTS
- Ubuntu 20.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
Also, you try to convert a classic WSL distro to the newer platform as described in the post Install Windows Subsystem for Linux 2 in Windows 10. In short, run the command wsl --set-version <distro_name> 2
in the elevated PowerShell. Subsitute the distro name with the actual distro name, e.g. Ubuntu: wsl --set-version Ubuntu 2
.
This will convert the specific distro to WSL 2.
The update from WSL 1 to WSL 2 may take several minutes to complete depending on the size of your targeted distribution.
Support us
Winaero greatly relies on your support. You can help the site keep bringing you interesting and useful content and software by using these options:
If you like this article, please share it using the buttons below. It won’t take a lot from you, but it will help us grow. Thanks for your support!
Рекомендуем: Что необходимо знать о WSL2 (подсистема Windows для Linux 2).
Два способа установить WSL 2 в Windows 10
- Установить WSL 2 в Windows 10 версии 21H2
- Установить WSL 2 в Windows 10 версии 20H2
WSL 2 или Windows Subsystem для Linux 2 — это итеративное обновление подсистемы Windows для Linux. Будучи намного лучше, чем WSL 1, очевидно, что стоит обновиться до WSL 2. Опыт установки WSL в новых сборках значительно упростился. Начиная с сборки 20246 Windows 10 Insiders Preview на канале Dev, выпущенной Microsoft сегодня, пользователи могут установить полноценную WSL, одной командой. Как это сделать в Windows 10 версии 20H2 и Windows 10 21H1 сборка 20246, рассмотрим в этом руководстве. Windows Fe (Iron) появилась. Проверьте какая версия Windows 10 установлена у вас?
Установить подсистему Windows для Linux 2 (WSL 2) в Windows 10 версии 21H2
- Больше не нужно копировать и вставлять несколько команд в PowerShell.
- Больше не нужно копаться в функциях Windows.
- Больше никаких походов в Магазин.
Все, что вам нужно сделать для установки подсистемы Windows для Linux, — это:
- Открыть «Командную строку», окно «PowerShell» или «Windows Terminal» от имени Администратора и ввести команду:
wsl --install
и нажать Enter.
Это включит WSL 2, загрузит и установит последнее ядро Linux WSL 2, а затем загрузит и установит самую последнюю версию Ubuntu LTS на WSL.
Если вы хотите установить другой дистрибутив Linux, у вас есть выбор. Просто добавьте немного дополнительной информации к команде перед тем, как нажать Enter:
wsl --install -d <DistroName>
Где <DistroName> — это имя ОС, которую вы хотите установить. Вот список доступных на данный момент:
- Ubuntu
- Debian
- Kali-Linux
- openSUSE-42
- SLES-12
- Ubuntu-16.04
- Ubuntu-18.04
- Ubuntu-20.04
Например: если вы хотите установить Ubuntu 16.04, вы должны ввести:
wsl --install -d Ubuntu-16.04
Чтобы обновить ядро WSL 2 с помощью командной строки, выполните следую команду:
wsl --update
«wsl.exe –install» в конечном итоге будет перенесен в существующие сервисные кольца Windows 10, что упростит установку WSL для всех. На данный момент требуется, чтобы ваше устройство с Windows 10 было на канале Insiders Dev.
Если вам не хочется загружать предварительную версию Windows 10 и на вашем ПК установлена версия 2004 (20H1) или предыдущая, вы можете установить подсистему Windows для Linux по старинке используя способ ниже:
Установить подсистему Windows для Linux 2 (WSL 2) в Windows 10 версии 20H2
Ниже приведены требования, которые должен соответствовать ваш компьютер для правильной работы WSL 2:
- Windows 10 версия 2004 (обновление за май) или новее.
- Поддержка — Hyper — V Виртуализации.
Кроме того, для работы всех функций подсистемы Windows для Linux 2 вам необходимо будет выполнить следующие действия в указанном порядке:
- Включить опциональную функцию WSL.
- Установите дистрибутив Linux.
- Включить Платформу виртуальной машины — необязательная функция.
- Загрузить обновление ядра WSL 2 (обязательно).
- Настроить установленный дистрибутив.
1] Включить опциональную функцию WSL
Чтобы установить WSL, откройте Windows PowerShell с от имени администратора.
Выполните следующую команду:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
или
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
После того как команда будет выполнена, вы получите запрос, если вы хотите перезагрузить компьютер, нажмите Y, чтобы сделать это сразу, или нажмите N, чтобы перезагрузить его вручную, позже.
2] Установить дистрибутив
Вы можете загрузить и установить нужный вам дистрибутив Linux из Магазина Microsoft.
Подробнее в нашем руководстве: Загрузить дистрибутив Linux из Microsoft Store
3] Включить дополнительную функцию «Платформа виртуальной машины».
Чтобы включить дополнительную функцию платформы виртуальных машин, откройте Windows PowerShell от имени администратора и выполните следующую команду:
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
или
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Если система запрашивает подтверждение, чтобы перезагрузить компьютер, нажмите Y, чтобы сделать это сразу, или N чтобы сделать это позже.
4] Настройте установленный дистрибутив
Наконец, нам нужно настроить установленный дистрибутив для WSL 2.
- Откройте Windows PowerShell и выполните эту команду, чтобы получить список всех доступных дистрибутивов WSL на вашем компьютере:
wsl -l -v
- Установите желаемый дистрибутив для работы в WSL 2. выполните следующую команду:
wsl --set-version DistroName 2
Где замените DistroName на имя дистрибутива из предыдущей команды.
Примечание: Команда wsl —set-version DistroName 1 позволит вам в любой момент переключится на Wsl 1.
5] WSL 2 обновление компонента ядра
- Обязательно загрузите пакет обновления ядра Linux на странице и установите его: https://aka.ms/wsl2kernel.
-
Дважды кликните файл wsl_update_x64.msi и примените обновление.
-
Запустите PowerShell от имени администратора.
-
Введите следующую команду, чтобы сделать Windows Subsystem for Linux 2 архитектурой по умолчанию для новых устанавливаемых дистрибутивов, и нажмите Enter:
wsl --set-default-version 2
После выполнения этих действий ваше устройство начнет использовать новую версию подсистемы Windows для Linux в качестве архитектуры по умолчанию.
Проверка дистрибутивной платформы
Чтобы убедиться, что ваши дистрибутивы используют подсистему Windows для Linux 2, выполните следующие действия:
-
Откройте Пуск.
-
Запустите PowerShell от имени администратора.
-
Введите следующую команду, чтобы проверить версию дистрибутива, и нажмите Enter :
wsl --list --verbose
- Убедитесь, что версия дистрибутива установлена как 2.
После того, как вы выполните эти шаги, вы узнаете, был ли процесс завершен успешно или вам нужно устранить неполадки на любом из предыдущих шагов.
Вы только что получили новый, плавный и быстрый опыт работы с подсистемой Windows для Linux 2.
WSL 2 значительно улучшит производительность файловой системы и полную совместимость системных вызовов. Это новое обновление основано на виртуализации (которая основана на Hyper-V), и работает на реальном ядре Linux.
Примечание: Некоторые из устаревших дистрибутивов WSL не предназначены для работы под WSL 2. Вот список WSL 2-совместимых дистрибутивов.
- Ubuntu
- Ubuntu 16.04 LTS
- Ubuntu 18.04 LTS
- Ubuntu 20.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
Вам может быть интересно:
- Как установить подсистему Windows для Linux.
- Доступ к файлам WSL Linux с помощью Проводника Windows 10
- Windows 10, Установка локального веб-сервера (Apache, MySQL, PHP) в Wsl 1 и Wsl 2.
- Как запускать приложения Linux GUI в Windows 10.
- Как Выполнить команды Linux из Командной строки Windows 10.
- Проверьте погоду в Windows 10 с помощью Linux Bash
- Как запустить OpenSUSE 42.2 Leap или SUSE Linux Enterprise Server 12 в Windows 10
Table of Contents
Windows Subsystem for Linux WSL1
This post explains how to upgrade from WSL 1 to WSL 2 on Windows 10 and 11. Please note that WSL 2 is only available on:
- Windows 11
- Windows 10, version 1903, build 18362 or later.
The main reasons to upgrade from WSL 1 to WSL 2 include increased file system performance and full system call compatibility.
Get the list of installed distributions:
NAME STATE VERSION
* Ubuntu Stopped 1
Debian Stopped 1
Enable Virtual Machine Platform
1. First, you need enable Virtual Machine Platform in order to run WSL 2. You can enable it using PowerShell or using Turn on Windows Features.
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all
Deployment Image Servicing and Management tool
Version: 10.0.19041.844
Image Version: 10.0.19043.2075
Enabling feature(s)
[==========================100.0%==========================]
The operation completed successfully.
Restart Windows to complete this operation.
Do you want to restart the computer now? (Y/N)
2. Once done, restart your computer to take the changes go into effect.
Install the Linux kernel update package
The Linux kernel in WSL 2 is built by Microsoft from the latest stable branch, based on the source available at kernel.org. This kernel has been specially tuned for WSL 2, optimizing for size and performance to provide an amazing Linux experience on Windows.
Or it can be done using PowerShell:
msiexec /i https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi /qn
Set default version
Open PowerShell and run this command to set WSL 2 as the default version when installing a new Linux distribution:
wsl --set-default-version 2
For information on key differences with WSL 2 please visit https://aka.ms/wsl2
The operation completed successfully.
Now, you can use the command wsl –list –online to obtain a list of available distributions for installation.
The following is a list of valid distributions that can be installed.
Install using 'wsl --install -d <Distro>'.
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
openSUSE-42 openSUSE Leap 42
SLES-12 SUSE Linux Enterprise Server v12
Ubuntu-16.04 Ubuntu 16.04 LTS
Ubuntu-18.04 Ubuntu 18.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
PS C:\> wsl --install -d kali-linux
Downloading: Kali Linux Rolling
Installing: Kali Linux Rolling
Kali Linux Rolling has been installed.
Launching Kali Linux Rolling...
PS C:\> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 1
kali-linux Installing 2
Debian Stopped 1
Then install a distro using wsl –install command.
wsl --install -d kali-linux
Downloading: Kali Linux Rolling
Installing: Kali Linux Rolling
Kali Linux Rolling has been installed.
Launching Kali Linux Rolling...
PS C:\> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 1
kali-linux Installing 2
Debian Stopped 1
If you’ve version 1 installed distros, you can upgrade them to version 2 using –set-default parameter.
wsl --set-version ubuntu 2
PS C:\> wsl --set-version ubuntu 2
Conversion in progress, this may take a few minutes...
For information on key differences with WSL 2 please visit https://aka.ms/wsl2
Conversion complete.
PS C:\> wsl --set-version debian 2
Conversion in progress, this may take a few minutes...
For information on key differences with WSL 2 please visit https://aka.ms/wsl2
Conversion complete.
PS C:\> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 2
kali-linux Stopped 2
Debian Stopped 2
Alternatively
In some cases, you can simply upgrade WSL 1 to WSL 2 using this command.
PS C:\> wsl --update
Checking for updates...
Downloading updates...
Installing updates...
This change will take effect on the next full restart of WSL.
Kernel version: 5.10.102.1