Wsl что это windows 10
Перейти к содержимому

Wsl что это windows 10

  • автор:

Установка Linux в Windows с помощью WSL

Разработчики могут одновременно получить доступ к возможности Windows и Linux на компьютере с Windows. Подсистема Windows для Linux (WSL) позволяет разработчикам устанавливать дистрибутив Linux (например, Ubuntu, OpenSUSE, Kali, Debian, Arch Linux и т. д.) и использовать приложения Linux, служебные программы и средства командной строки Bash непосредственно в Windows, не измененные без затрат на традиционную виртуальную машину или двойную настройку.

Необходимые компоненты

Для использования приведенных ниже команд необходимо запустить Windows 10 версии 2004 и выше (сборка 19041 и выше) или Windows 11. Если вы находитесь в более ранних версиях, перейдите на страницу установки вручную.

Команда установки WSL

Теперь вы можете установить все необходимое для запуска WSL с помощью одной команды. Откройте Командную строку PowerShell или Windows в режиме администратора , щелкнув правой кнопкой мыши и выбрав команду «Запуск от имени администратора», введите команду wsl —install, а затем перезапустите компьютер.

wsl --install 

Эта команда включит функции, необходимые для запуска WSL и установки дистрибутива Ubuntu для Linux. (Этот дистрибутив по умолчанию можно изменить.)

Если вы используете более раннюю сборку или не хотите использовать команду для установки и вам нужны пошаговые инструкции, см. статью Действия по установке WSL вручную для старых версий.

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

Приведенная выше команда работает только в том случае, если WSL не установлен вообще. Если вы запускаете wsl —install и видите текст справки WSL, попробуйте wsl —list —online просмотреть список доступных дистрибутивов и запустить wsl —install -d для установки дистрибутива. Сведения об удалении WSL см. в разделе Удаление устаревшей версии WSL или Отмена регистрации или удаление дистрибутива Linux.

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

По умолчанию в качестве устанавливаемого дистрибутива Linux используется Ubuntu. Для этого используйте флаг -d .

  • Чтобы изменить установленный дистрибутив, введите wsl —install -d . Замените именем дистрибутива, который хотите установить.
  • Чтобы просмотреть список доступных дистрибутивов Linux, доступных для скачивания через Интернет-магазин, введите wsl —list —online или wsl -l -o .
  • Чтобы установить дополнительные дистрибутивы Linux после исходной установки, можно также использовать команду wsl —install -d .

Если вы хотите установить дополнительные дистрибутивы из командной строки Linux или Bash (а не из PowerShell или командной строки), используйте .exe в команде wsl.exe —install -d . Чтобы получить список доступных дистрибутивов, используйте wsl.exe -l -o .

Если во время установки возникла проблема, см. раздел Установка руководства по устранению неполадок.

Чтобы установить дистрибутив Linux, который не указан как доступный, можно импортировать его с помощью TAR-файла. В некоторых случаях, как с Arch Linux, можно выполнить установку с помощью файла .appx . Вы также можете создать собственный пользовательский дистрибутив Linux для использования с WSL.

Настройка сведений о пользователе Linux

После установки WSL необходимо создать учетную запись пользователя и пароль для установленного дистрибутива Linux. Дополнительные сведения см. в статье Рекомендации по настройке среды разработки WSL.

Советы и рекомендации

Мы рекомендуем использовать наше пошаговое руководство Рекомендации по настройке среды разработки WSL. В нем описано, как настроить имя пользователя и пароль для установленных дистрибутивов Linux, использовать основные команды WSL, установить и настроить Терминал Windows, настроить управление версиями Git, отредактировать код и выполнить отладку с помощью удаленного сервера VS Code. Кроме того, в руководстве приведены рекомендации по хранению файлов, настройке базы данных, подключению внешнего диска, настройке ускорения GPU и пр.

Проверьте, какая версия WSL запущена

Вы можете получить список установленных распределений Linux и проверить версию WSL, задав команду wsl -l -v в PowerShell или в Командной строке Windows.

Чтобы задать значение WSL 1 или WSL 2 для версии по умолчанию при установке нового распределения Linux, используйте команду wsl —set-default-version , заменив на 1 или 2.

Чтобы определить распределение Linux по умолчанию для использования с командой wsl , введите wsl -s или wsl —set-default , заменив именем распределения Linux, который вы хотите использовать. Например, в PowerShell или CMD введите wsl -s Debian , чтобы задать для распределения значение по умолчанию — Debian. Теперь запуск wsl npm init в PowerShell приведет к выполнению npm init команды в Debian.

Чтобы запустить определенное распределение WSL из PowerShell или Командной строки Windows без изменения распределения по умолчанию, выполните команду wsl -d , заменив именем распределения, которое вы хотите использовать.

Дополнительные сведения см. в руководстве по основным командам для WSL.

Обновление версии WSL 1 до WSL 2

Для новых установок Linux, выполненных с помощью команды wsl —install , по умолчанию будет задано WSL 2.

С помощью команды wsl —set-version можно перейти с версии WSL 2 на WSL 1 или обновить ранее установленные дистрибутивы Linux с версии WSL 1 до WSL 2.

Чтобы проверить, какая установлена версия распределения Linux — WSL 1 или WSL 2, — выполните команду wsl -l -v .

Для изменения версий выполните команду wsl —set-version 2 , заменив именем дистрибутива Linux, который требуется обновить. Например, команда wsl —set-version Ubuntu-20.04 2 настроит распределение Ubuntu 20,04 на использование WSL 2.

Если вы установили WSL вручную, до того как команда wsl —install стала доступна, возможно, вам также потребуется включить необязательный компонент виртуальной машины, используемый WSL 2, и установить пакет ядра, если это еще не сделано.

Список команд WSL см. в справочнике по командам для WSL; рекомендации по использованию одной из версий в рабочем сценарии см. в статье со сравнением WSL 1 и WSL 2; для получения общих сведений о настройке надлежащего рабочего процесса разработки с помощью WSL ознакомьтесь с рекомендациями по настройке среды разработки WSL.

Способы запуска нескольких распределений Linux с помощью WSL

WSL поддерживает запуск неограниченного количества различных распределений Linux. Сюда входит выбор распределений из Microsoft Store, импорт настраиваемого распределенияили создание собственного пользовательского распределения.

Существует несколько способов запуска распределений Linux после их установки:

  • Установка Терминал Windows(Рекомендуется)С помощью Терминал Windows поддерживает столько команд, сколько вы хотите установить, и позволяет открывать их на нескольких вкладках или панелях окон и быстро переключаться между несколькими дистрибутивами Linux или другими командными строками (PowerShell, командная строка, Azure CLI и т. д.). Вы можете полностью настроить терминал, используя уникальные цветовые схемы, стили шрифтов, размеры, фоновые изображения и пользовательские сочетания клавиш. Подробнее.
  • Вы можете напрямую открыть распределение Linux, для этого откройте меню «Пуск» Windows и введите имя установленного распределения. Например, «Ubuntu». Откроется Ubuntu в собственном окне консоли.
  • В Командной строке Windows или PowerShell можно ввести имя установленного распределения. Например: ubuntu
  • Из PowerShell или командной строки Windows можно открыть распределение Linux по умолчанию в текущей командной строке, введя wsl.exe .
  • Из PowerShell или командной строки Windows можно использовать распределение Linux по умолчанию в текущей командной строке без ввода новой, введя команду wsl [command] . Замена [command] командой WSL, например wsl -l -v для вывода списка установленных распределений или wsl pwd , чтобы узнать место подключения текущего пути к каталогу в WSL. В PowerShell команда get-date предоставит дату из файловой системы Windows, а wsl date предоставит дату из файловой системы Linux.

Выбранный метод должен зависеть от ваших действий. Если вы открыли командную строку WSL в Командной строке Windows или окне PowerShell и хотите выйти, введите команду exit .

Хотите испытать новейшие предварительные версии функций WSL?

Чтобы поработать с самыми последними функциями или обновлениями для WSL, присоединитесь к Программе предварительной оценки Windows. Когда вы присоединитесь к участникам Программы предварительной оценки Windows, вы сможете выбрать канал для получения предварительных сборок в меню параметров Windows и будете автоматически получать предварительные версии функций и обновления для WSL, связанные с этой сборкой. Варианты:

  • Канал разработчика: последние обновления, но низкая стабильность.
  • Бета-канал: идеально подходит для ранних последователей; более надежные сборки, чем в канале разработки.
  • Канал предварительного выпуска: предварительные версии исправлений и основных функций следующей версии Windows непосредственно перед предоставлением их общедоступной версии.

Дополнительные ресурсы

Часто задаваемые вопросы о подсистеме Windows для Linux

Подсистема Windows для Linux (WSL) — это функция операционной системы Windows, которая позволяет запускать файловую систему Linux, а также программы командной строки Linux и приложения графического пользовательского интерфейса непосредственно в Windows, наряду с традиционными классическими приложениями и приложениями Windows.

Чтобы узнать больше, ознакомьтесь со страницей сведений.

Для кого предназначена WSL?

В первую очередь это средство для разработчиков, особенно веб-разработчиков, работающих над открытый код проектами или развертывающихся в серверных средах Linux. WSL предназначен для тех, кто любит использовать Bash, распространенные инструменты Linux ( sed , awk и т. д.) и платформы Linux (Ruby, Python и т. д.), но также пользуется инструментами для повышения производительности Windows

Что можно сделать с помощью WSL?

WSL позволяет запускать Linux в оболочке Bash с выбранным дистрибутивом (Ubuntu, Debian, OpenSUSE, Kali, Alpine и т. д.). С помощью Bash можно запускать программы командной строки и приложения Linux. Например, введите lsb_release -a и нажмите клавишу ВВОД. Вы увидите сведения о текущем запущенном дистрибутиве Linux.

Снимок экрана со сведениями о дистрибутиве

Вы также можете получить доступ к файловой системе локального компьютера из оболочки Linux Bash. Локальные диски будут подключены в папке /mnt . Например, диск C: подключается в /mnt/c .

Снимок экрана подключенного диска C

Опишите типичный рабочий процесс разработки с использованием WSL

Подсистема WSL нацелена на аудиторию разработчиков и предназначена для использования в рамках внутреннего цикла разработки. Предположим, Семен создает конвейер CI/CD (Непрерывная интеграции & Непрерывная поставка) и хочет сначала протестировать его на локальном компьютере (ноутбуке) перед развертыванием в облаке. Семен может включить WSL (& WSL 2, чтобы повысить скорость и производительность), а затем использовать подлинный экземпляр Linux Ubuntu на локальном компьютере (ноутбуке) с любыми командами Bash и инструментами по своему выбору. После проверки конвейера разработки в локальной среде Семен может отправить этот конвейер CI/CD в облако (т. е. в Azure), сделав его контейнером Docker и отправив в облачный экземпляр, где он будет выполняться на рабочей виртуальной машине Ubuntu.

Что такое Bash?

Bash — это популярная текстовая оболочка и язык команд. Это оболочка по умолчанию, включенная в Ubuntu и другие дистрибутивы Linux. Пользователи могут вводить команды в оболочке для выполнения сценариев и (или) команд и инструментов, чтобы выполнять множество задач.

Как это работает?

Ознакомьтесь с этой статьей в блоге о командной строке Windows: Подробное изучение того, как WSL позволяет Windows получать доступ к файлам Linux , в которой подробно описана базовая технология.

Зачем использовать WSL вместо Linux в виртуальной машине?

WSL требует меньше ресурсов (ЦП, памяти и хранилища), чем полноценная виртуальная машина. WSL также позволяет запускать программы командной строки и приложения Linux вместе с приложениями командной строки, классическими приложениями и приложениями Store для Windows, а также позволяет обращаться к файлам Windows в Linux. Это позволяет использовать приложения для Windows и программы командной строки Linux для одного и того же набора файлов, если требуется.

Зачем использовать, например, Ruby в Linux, а не Ruby в Windows?

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

Многие языки, такие как Ruby и Node.js, часто переносятся в Windows и работают отлично. Тем не менее, не все владельцы библиотек Ruby Gem или node/NPM переносят свои библиотеки для поддержки Windows, и многие из них имеют зависимости, относящиеся к Linux. Это часто может привести к тому, что системы, созданные с помощью таких инструментов и библиотек, становятся подвержены ошибкам во время сборки, а иногда — во время выполнения, либо не работают в Windows требуемым образом.

Это лишь часть проблем, из-за которых многие пользователи просят корпорацию Майкрософт улучшить программы командной строки Windows, а мы стали партнерами с Canonical, чтобы обеспечить выполнение собственных программ командной строки Linux и Bash в Windows.

Что это означает для PowerShell?

При работе с проектами OSS существует множество сценариев, в которых чрезвычайно полезно перейти в Bash из командной строки PowerShell. Поддержка Bash дополняет и расширяет возможности командной строки в Windows, позволяя использовать PowerShell, а сообществу PowerShell — применять другие популярные технологии.

Дополнительные сведения см. в блоге группы разработчиков PowerShell: Bash for Windows: Why it’s awesome and what it means for PowerShell (Bash для Windows: почему это здорово и что это значит для PowerShell)

Какие процессоры поддерживает WSL?

WSL поддерживает процессоры x64 и Arm.

Как получить доступ к моему диску C?

Точки подключения для жестких дисков на локальном компьютере создаются автоматически и обеспечивают простой доступ к файловой системе Windows.

Пример использования — команда cd /mnt/c для доступа к диску C:\

Как настроить диспетчер учетных данных Git? (Как использовать разрешения Windows Git в WSL?)

Ознакомьтесь с руководством По началу работы с Git на подсистема Windows для Linux, в котором содержится раздел о настройке диспетчера учетных данных Git и хранении маркеров проверки подлинности в Диспетчере учетных данных Windows.

Как использовать файл Windows в приложении Linux?

Одним из преимуществ WSL является возможность доступа к файлам с помощью приложений или инструментов Windows и Linux.

WSL подключает несъемные диски вашего компьютера к папке /mnt/ в ваших дистрибутивах Linux. Например, диск C: подключается в /mnt/c/ .

Используя подключенные диски, можно изменить код, например, в C:\dev\myproj\ с помощью Visual Studio или VS Code, а также выполнить сборку или тестирование этого кода в Linux, воспользовавшись этими же файлами в /mnt/c/dev/myproj .

Отличаются ли файлы на диске Linux от файлов на подключенном диске Windows?

  1. Файлы в корневом каталоге Linux (т. е. / ) управляются WSL, который соответствует поведению Linux, включая, помимо прочего, следующие:
    • файлы, содержащие в имени файла недопустимые знаки для Windows;
    • символические ссылки, созданные для пользователей без прав администратора;
    • изменение атрибутов файла с помощью chmod и chown;
    • учет регистра в именах файлов и папок.
  2. Файлы на подключенных дисках контролируются Windows и имеют следующие характеристики:
    • поддерживают учет регистра;
    • все разрешения заданы для наилучшего отражения разрешений Windows.

Как удалить дистрибутив WSL?

Чтобы удалить дистрибутив из WSL и удалить все данные, связанные с этим дистрибутивом Linux, выполните команду wsl —unregister , где — имя дистрибутива Linux, которое можно увидеть из списка в команде wsl -l .

Кроме того, вы можете удалить приложение дистрибутива Linux на компьютере так же, как и любое другое приложение магазина.

Дополнительные сведения о командах wsl см. в статье Основные команды для WSL.

Как запустить сервер OpenSSH?

OpenSSH поставляется с Windows в качестве необязательной функции. См. документацию по установке OpenSSH . Для запуска OpenSSH в WSL требуются права администратора в Windows. Чтобы запустить сервер OpenSSH, запустите дистрибутив WSL (например, Ubuntu) или Терминал Windows от имени администратора. Существует несколько ресурсов, посвященных сценариям SSH с WSL. Ознакомьтесь со статьями в блоге Скотта Хансельмана: How to SSH in a Windows 10 Machine from Linux OR Windows OR anywhere, How to SSH into WSL2 on Windows 10 on a external machine, THE EASY WAY how to SSH in Bash and WSL2 on Windows 10 on a external machine, and How to use Windows 10’s built-in OpenSSH to automatically SSH in a remote Linux machine.

Как изменить язык интерфейса WSL?

Установщик WSL попытается автоматически изменить языковой стандарт Ubuntu в соответствии с языковым стандартом установки Windows. Если это нежелательно, можно выполнить приведенную ниже команду, чтобы изменить языковой стандарт Ubuntu после завершения установки. Чтобы это изменение войло в силу, потребуется повторно запустить дистрибутив WSL.

В приведенном ниже примере языковой стандарт изменяется на EN-US.

sudo update-locale LANG=en_US.UTF8 

Почему у меня нет доступа к Интернету из WSL?

Некоторые пользователи сообщили о проблемах с определенными приложениями брандмауэра, блокирующими доступ к Интернету в WSL. Сообщили о следующих брандмауэрах:

  1. Kaspersky;
  2. AVG;
  3. Avast.
  4. Symantec Endpoint Protection
  5. F-Secure

В некоторых случаях отключение брандмауэра обеспечивает доступ. В некоторых случаях доступ блокируется просто при наличии установленного брандмауэра.

Как получить доступ к порту из WSL в Windows?

WSL использует IP-адрес Windows, так как работает в Windows. Поэтому вы можете получить доступ к любым портам на localhost. Например, если вы предоставляете веб-содержимое через порт 1234, то вы можете открыть адрес https://localhost:1234 в браузере для Windows. Дополнительные сведения см. в разделе Доступ к сетевым приложениям.

Как создать резервную копию дистрибутивов WSL или переместить их с одного диска на другой?

Лучший способ резервного копирования или перемещения дистрибутивов — с помощью команд экспорта и импорта, доступных в Windows версии 1809 и более поздних версий. Вы можете экспортировать весь дистрибутив в архив tarball с помощью команды wsl —export . Затем вы можете импортировать этот дистрибутив обратно в WSL с помощью wsl —import команды , которая может назвать новое расположение диска для импорта, что позволяет создавать резервные копии и сохранять состояния (или перемещать) дистрибутивы WSL.

Обратите внимание, что традиционные службы резервного копирования, которые резервное копирование файлов в папках AppData (например, программа архивации данных), не повреждают файлы Linux.

Можно ли использовать WSL для рабочих сценариев?

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

Main различия между WSL и традиционной рабочей средой:

  • WSL имеет упрощенную служебную виртуальную машину, которая запускает, останавливает ресурсы и управляет ими автоматически.
  • Если у вас нет открытых дескрипторов файлов для процессов Windows, виртуальная машина WSL будет автоматически выключена. Это означает, что если вы используете его в качестве веб-сервера, в него входит SSH для запуска сервера, а затем выхода, виртуальная машина может завершить работу, так как она обнаруживает, что пользователи закончили использовать ее, и очистит ее ресурсы.
  • Пользователи WSL имеют полный доступ к своим экземплярам Linux. Время существования виртуальной машины, зарегистрированные дистрибутивы WSL и т. д. доступны пользователю и могут быть изменены пользователем.
  • WSL автоматически предоставляет доступ к файлам Windows.
  • Пути Windows добавляются к пути по умолчанию, что может привести к непредвиденному поведению некоторых приложений Linux по сравнению с традиционной средой Linux.
  • WSL может запускать исполняемые файлы Windows из Linux, что также может привести к среде, отличной от среды традиционной виртуальной машины Linux.
  • Ядро Linux, используемое WSL, обновляется автоматически.
  • Доступ к GPU в WSL осуществляется через /dev/dxg устройство, которое направляет вызовы GPU в GPU Windows. Эта настройка отличается от традиционной настройки Linux.
  • Существуют и другие меньшие различия по сравнению с Linux без операционной системы, и, как ожидается, в будущем возникнет больше различий, так как рабочий процесс разработки внутреннего цикла будет приоритетным.

Как перенести WSL-файлы с одного компьютера на другой?

Эту задачу можно выполнить несколькими способами.

  • Самый простой способ — использовать wsl —export —vhd команду для экспорта дистрибутива WSL в VHD-файл. Затем этот файл можно скопировать на другой компьютер и импортировать с помощью wsl —import —vhd . Дополнительные сведения см. в документации по командам .
  • Для реализации выше требуется много места на диске. Если у вас недостаточно места на диске, вы можете использовать методы Linux для перемещения файлов:
    • Используйте tar -czf для создания tarball файлов. Затем вы можете скопировать эти файлы на новый компьютер и выполнить команду tar -xzf , чтобы извлечь их.
    • Вы также можете экспортировать список установленных пакетов с помощью apt команды, например , dpkg —get-selections | grep -v deinstall | awk » > package_list.txt а затем переустановить те же пакеты на другом компьютере с помощью команды, например sudo apt install -y $(cat package_list.txt) после передачи файла.

    WSL 2

    Использует ли подсистема WSL 2 Hyper-V? Будет ли она доступна в Windows 10 Домашняя и Windows 11 Домашняя?

    WSL 2 доступен на всех номерах SKU классических приложений, где доступен WSL, включая Windows 10 Домашняя и Windows 11 Домашняя.

    Последняя версия WSL использует архитектуру Hyper-V для включения виртуализации. Эта архитектура будет доступна в качестве дополнительного компонента Virtual Machine Platform (Платформа виртуальной машины). Этот необязательный компонент будет доступен во всех номерах SKU. Более подробную информацию об этом интерфейсе можно получить ближе к выпуску WSL 2.

    Что произойдет с подсистемой WSL 1? Будет ли прекращена ее поддержка?

    В настоящее время не планируется объявлять подсистему WSL 1 нерекомендуемой. Вы можете запускать дистрибутивы WSL 1 и WSL 2 параллельно, обновлять их и переходить на более раннюю версию дистрибутива в любое время. Добавление WSL 2 в качестве новой архитектуры для команды WSL представляет собой лучшую платформу, которая предоставляет отличные возможности для запуска среды Linux в Windows.

    Смогу ли я запускать WSL 2 с другими сторонними инструментами виртуализации, такими как VMware или VirtualBox?

    Если Hyper-V уже используется, то некоторые сторонние приложения не могут работать. Соответственно, они не смогут выполняться при включенном WSL 2, например VMware и VirtualBox. Но недавно вышли новые выпуски VirtualBox и VMware, поддерживающие Hyper-V и WSL2. Дополнительные сведения об изменениях VirtualBox см. здесь, а об изменениях VMware см. здесь. Сведения об устранении неполадок можно найти в обсуждениях проблем с VirtualBox в репозитории WSL на GitHub.

    Мы постоянно работаем над решениями для поддержки интеграции Hyper-V от сторонних производителей. Например, мы предоставляем набор API-интерфейсов (платформа гипервизора), который сторонние поставщики виртуализации могут использовать для обеспечения совместимости своего программного обеспечения с Hyper-V. Это позволяет приложениям использовать архитектуру Hyper-V для своих эмуляций, например Google Android Emulator, а также VirtualBox 6 и более поздней версии, которые теперь совместимы с Hyper-V.

    Дополнительные сведения о проблемах WSL 2 с VirtualBox 6.1 см. в репозитории проблем WSL.

    *Если вы ищете виртуальную машину Windows, скачиваемые виртуальные машины VMWare, Hyper-V, VirtualBox и Parallels можно загрузить в Центре разработки для Windows.

    Могу ли я получить доступ к GPU в WSL 2? Планируется ли усилить поддержку оборудования?

    Мы выпустили поддержку для доступа к GPU в дистрибутивах WSL 2. Это означает, что теперь вы можете использовать WSL для сценариев с применением машинного обучения, искусственного интеллекта, а также обработки и анализа данных, если задействованы большие наборы данных. Ознакомьтесь с руководством по началу работы с решениями с поддержкой GPU. Сейчас WSL 2 не включает последовательную поддержку или поддержку USB-устройств. Мы определяем оптимальный способ добавления этих функций. Однако поддержка USB теперь доступна в проекте USBIPD-WIN. Инструкции по настройке поддержки USB-устройств см. в статье Подключение USB-устройств .

    Может ли WSL 2 использовать сетевые приложения?

    Да, в целом сетевые приложения будут работать лучше и быстрее с WSL 2, так как они обеспечивают полную совместимость системных вызовов. Однако в архитектуре WSL 2 используются виртуализированные сетевые компоненты, что означает, что WSL 2 будет вести себя так же, как виртуальная машина. Дистрибутивы WSL 2 будут иметь IP-адрес, отличный от IP-адреса хост-компьютера (ОС Windows). Дополнительные сведения см. в статье Доступ к сетевым приложениям с помощью WSL.

    Можно ли запустить WSL 2 на виртуальной машине?

    Да! Необходимо убедиться, что на виртуальной машине включена вложенная виртуализация. Ее можно включить в родительском узле Hyper-V, выполнив следующую команду в окне PowerShell с правами администратора:

    Set-VMProcessor -VMName -ExposeVirtualizationExtensions $true

    Не забудьте заменить именем своей виртуальной машины.

    Можно ли использовать wsl.conf в WSL 2?

    WSL 2 поддерживает тот же файл wsl.conf, который использует WSL 1. Это означает, что все параметры конфигурации, заданные в дистрибутиве WSL 1, такие как автоподключение дисков Windows, включение или отключение взаимодействия, изменение каталога, в котором будут подключаться диски Windows, и т. д. будут работать в WSL 2. Дополнительные сведения о параметрах конфигурации в WSL см. на странице Управление распространителями . Дополнительные сведения о поддержке подключения дисков, дисков, устройств или виртуальных жестких дисков (VHD) см. в статье Подключение диска Linux в WSL 2 .

    Куда можно отправить отзыв?

    • Выполнять поиск сведений о существующих проблемах, чтобы найти информацию, связанную с возникшей проблемой. Обратите внимание, что в строке поиска можно удалить is:open, чтобы включить в результаты поиска проблемы, которые уже были решены. Рассмотрите возможность комментирования или одобрения любых открытых проблем, чтобы выразить свою заинтересованность в их продвижении в качестве приоритетных.
    • Регистрировать сведения о новых проблемах. Если вы обнаружили проблему с WSL, о которой нет упоминаний, вы можете нажать зеленую кнопку New issue (Новая проблема), а затем выбрать элемент WSL — Bug Report (WSL — отчет об ошибках). Вам нужно будет включить название проблемы, номер сборки Windows (выполните cmd.exe /c ver , чтобы узнать номер текущей сборки), независимо от того, используете ли вы WSL 1 или WSL 2, текущую версию ядра Linux (выполните wsl.exe —status или cat /proc/version ), номер версии дистрибутива (выполните lsb_release -r ), а также любые другие версии используемого программного обеспечения, сведения о действиях для воспроизведения, ожидаемом поведении, фактическом поведении, а также журналы диагностики, если они доступны и применимы. Дополнительные сведения см. в разделе, посвященном вкладу в WSL.
    • Отправить запрос на функцию, нажав зеленую кнопку New issue (Новая проблема) и выбрав Feature request (Запрос на функцию). Вам нужно будет ответить на несколько вопросов, описывающих ваш запрос.

    Кроме того, вы можете сделать следующее:

    • Зарегистрировать сведения о проблеме с документацией, используя репозиторий документов WSL. Чтобы внести изменения в документацию по WSL, ознакомьтесь с руководством для участников разработки портала «Документация» Майкрософт.
    • Зарегистрировать сведения о проблеме с Терминалом Windows, используя репозиторий продуктов Терминала Windows, если проблема связана с Терминалом Windows, консолью Windows или пользовательским интерфейсом командной строки.

    Если вы хотите оставаться в курсе последних новостей WSL, используйте следующее:

    • в наш блог команды разработчиков для командной строки;
    • Twitter. Следите за @craigaloewen в Twitter, чтобы узнать о новостях, обновлениях и т. д.

    Учебный курс— введение в подсистема Windows для Linux (WSL)

    Это 7-часть обучения предоставляет введение в WSL. Ознакомьтесь с основными понятиями, которые объединяют операционные системы Windows и Linux, включая установку одного или нескольких дистрибутивов Linux на компьютере Windows.

    Если вы ищете только рекомендации по установке WSL или другой справочной документации, а не всего модуля обучения, см . инструкции по установке Linux в Windows с WSL.

    Цели обучения

    По завершении этого модуля вы сможете:

    • Описание интеграции Windows + Linux, включенной WSL, и преимущества традиционной виртуальной машины или двойной загрузки.
    • Настройте базовую среду разработки с помощью WSL.
    • Объясните типичный рабочий процесс, использующий WSL с рекомендуемой интегрированной интегрированной среде разработки и инструментами.
    • Установите и запустите дистрибутив Linux или несколько дистрибутивов, работающих параллельно.
    • Описание возможностей WSL для использования средств командной строки Windows и Linux и приложений графического интерфейса.
    • Выполните базовые команды WSL, Bash и PowerShell.
    • Объясните, что WSL может и не может сделать, и оцените, подходит ли это для ваших потребностей.

    Предварительные требования

    • Компьютер под управлением Windows 11 или Windows 10.
    • Возможность запуска PowerShell или командной строки Windows в качестве Администратор istrator.

    Подсистема Windows для Linux (WSL) в среде Windows 10.

    Начиная с версии Windows 10 Build 14251, в набор стандартных компонентов системы была добавлена Подсистема Windows для Linux (Windows Subsystem for Linux или WSL) . Главное назначение WSL – создать программный слой в среде Windows 10 для обеспечения функционирования приложений Linux. Первоначально подсистема поддерживала только дистрибутив Ubuntu 14.04, образ которого можно было загрузить через магазин Microsoft Store. Затем количество поддерживаемых дистрибутивов увеличилось, и продолжает увеличиваться, включая наиболее популярные дистрибутивы. Установка выполняется таким же образом, как и стандартное приложение, без применения виртуальных машин или сторонних пакетов эмуляции. Пользователь Windows 10 в пару кликов мышкой устанавливает операционную систему семейства Linux без графической оболочки, функционирующую на компьютере подобно стандартному приложению, загруженному из Microsoft Store.

    Подсистема WSL позволяет:

    1. Выбрать предпочитаемый дистрибутив из магазина Windows (Microsoft Store)

    2. Пользоваться командной оболочкой Linux и прочим программным обеспечением совершенно бесплатно.

    3. Выполнять скрипты командной оболочки и использовать популярные программные средства Linux, как ssh, MySQL, Apache, языки программирования C/C++, Ruby, Python и т.п.

    4. Устанавливать дополнительное программное обеспечение с использованием собственного менеджера пакетов выбранного дистрибутива GNU/Linux.

    5. Использовать совместное функционирование приложений обеих операционных систем и использование общих ресурсов.

    Подсистема WSL продолжает развиваться, и постепенно трансформировалась в новую версию, получившую обозначение WSL 2 , отличающуюся повышенным быстродействием, улучшенным взаимодействием с компьютерным оборудованием и компонентами Windows, новой архитектурой на базе реального ядра Linux, специально адаптированного для использования в WSL 2. Кроме того, данное ядро Linux распространяется с открытым исходным кодом (Open Source), который можно загрузить на странице проекта github.com-WSL2-Linux-Kernel

    WSL 2 является очередным шагом в технологии виртуализации, позволившим использовать ядро Linux, выполняемое под управлением относительно небольшой утилиты, обеспечивающей высокий уровень интеграции между Windows и Linux и значительное повышение быстродействия операций ввода-вывода, системных вызовов и приложений. По некоторым данным, распаковка zip-архивов в среде WSL 2 выполняется в 15-20 раз быстрее, а сборка пакетов – в 2-5 раз быстрее чем в WSL 1.

    По умолчанию, компонент Подсистема Windows для Linux (WSL) выключен. Для включения можно воспользоваться апплетом Панели управления Программы и компоненты — Включение или отключение компонентов Windows :

    Включение подсистемы Windows для Linux.

    После включения WSL, нужно выполнить перезагрузку Windows.

    Для включения WSL и проверки ее состояния можно использовать командную оболочку Power Shell, запущенную на выполнение от имени Администратора. Проверить состояние подсистемы можно командой:

    Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

    Пример отображаемой информации:

    FeatureName : Microsoft-Windows-Subsystem-Linux
    DisplayName : Подсистема Windows для Linux
    Description : Предоставляет службы и среды для запуска собственных средств и оболочек Linux в пользовательском режиме в Windows.
    RestartRequired : Possible
    State : Enabled

    ServerComponent\Description : Предоставляет службы и среды для запуска собственных средств и оболочек Linux в пользовательском режиме в Windows.
    ServerComponent\DisplayName : Подсистема Windows для Linux
    ServerComponent\Id : 1033
    ServerComponent\Type : Feature
    ServerComponent\UniqueName : Microsoft-Windows-Subsystem-Linux
    ServerComponent\Deploys\Update\Name : Microsoft-Windows-Subsystem-Linux

    Строка State : Enabled указывает на то, что подсистема Windows для Linux включена.

    Для включения подсистемы WSL посредством Power Shell можно использовать команду:

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

    Для отключения WSL:

    Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

    Выбор дистрибутива и установка Linux

    После включения подсистемы WSL и перезагрузки Windows 10 можно приступить к установке ОС Linux. В прежних версиях подсистемы Windows для Linux для настройки дистрибутива Linux использовалась утилита командной строки lxrun.exe . На сегодняшний день она считается устаревшей и в дальнейшем будет исключена из подсистемы WSL. Дистрибутивы можно установить из стандартного Магазина Windows (Microsoft Store):

    Выбор дистрибутива Linux в Microsoft Store.

    При необходимости, можно получить более подробную информацию о конкретном дистрибутиве, например Kali :

    Сведения о приложении Kali, загружаемом из Microsoft Store.

    Как видим, отображаются краткие сведения о дистрибутиве, способе запуска Linux после установки, а также сведения о загружаемом образе. Для уменьшения объема загружаемых данных образ не содержит графической оболочки и некоторых приложений, которые легко устанавливаются с использованием штатных средств управления пакетами выбранного дистрибутива Linux.

    После загрузки и начальной установки дистрибутива, можно выполнить его запуск нажатием кнопки Запустить

    Первый запуск установленного в подсистеме WSL Linux.

    После запуска начнется развертывание полученного дистрибутива Linux в подсистеме WSL. В процессе начальной установки и настройки потребуется ввести имя пользователя и пароль.

    Начальная установка и настройка Linux в подсистеме WSL Linux.

    После успешной установки, в консоли отобразится стандартное приглашение командной строки. К этому моменту будут выполнены настройки сетевых интерфейсов, имени узла, клиента DNS и т.п а также смонтированы логические диски ОС Windows 10 (стандартно — /mnt/c — для диска C:, /mnt/d — для диска D: и т.д). Дальнейшее применение установленного Linux зависит от его предназначения и неизбежно потребует установки дополнительных приложений с использованием стандартных средств данного дистрибутива, при чем – из командной строки. Как и в случае с отдельным компьютером с ОС Linux, первым шагом в применении нового дистрибутива будет освоение методов установки и удаления программ.

    На сегодняшний день, в Microsoft Store имеется несколько дистрибутивов Linux – Ubuntu ( в том числе и с длительной поддержкой), Kali, Debian и Suse (в том числе и серверные дистрибутивы). Очевидно, что этот набор будет постепенно расширяться. Наиболее востребованным дистрибутивом, по статистике Microsoft Store, является Ubuntu. После завершения установки, запуск программы можно выполнить в командной строке, введя:

    Либо Win+R — ubuntu

    Либо с использованием ярлыка из меню кнопки Пуск — Ubuntu .

    В самом начале использования вновь установленного Linux, желательно выполнить обновление установленного ПО и добавить необходимый для дальнейшей работы набор программ.

    В дистрибутивах на основе Debian (Ubuntu) имеется стандартная утилита apt для работы с системой управления программными пакетами APT ( A dvanced P ackaging T ool). Данная утилита и ее производные ( apt-cache , apt-get ) используются для установки новых программных пакетов, удаления существующих, обновления уже установленных, а также для обновления всей операционной системы. Примеры использования:

    apt –h — отобразить подсказку по использованию apt
    apt-cache –h — отобразить подсказку по использованию apt-cache
    apt-get –h — отобразить подсказку по использованию apt-get

    Более подробную подсказку можно получить из комплекта документации man-страниц:

    sudo apt-get update — обновить список установленных программных пакетов в соответствии с источниками, заданными в файле /etc/apt/sources.list .

    sudo apt-get upgrade — обновить все программные пакеты, существующее в системе на данный момент времени.

    sudo apt-get install mc — установить файловый менеджер Midhight Commander

    apt-get remove —purge mc — удалить файловый менеджер Midhight Commander и все его конфигурационные файлы (параметр —purge )

    Некоторые характерные особенности WSL

    Несмотря на то, что WSL 2 стала значительным шагом развития подсистемы, в ней остаются множественные проблемы не позволяющие получить полноценную ОС семейства Linux в среде Windows. Хотя, изначально, при разработке подсистемы WSL, такая задача и не ставилась, ведь требовалось всего лишь средство для разработчиков, создающее универсальную, быстродействующую и привычную среду в рамках ОС Windows. Если постановка задачи не изменится, то очевидно, подсистема WSL никогда не заменит ”настоящий” Linux, хотя и приблизится к нему вплотную.

    В частности, в реализации WSL на вторую половину 2019 г. нет возможности установки модулей ядра, не реализован стандартный для Linux механизм сокетов, нет полноценного взаимодействия между процессами и т.д. и т.п. Как результат – нет графической оболочки пользователя, нет возможности использования приложения, требующих наличие драйвера ядра, не работает огромное количество системных служб. Часть проблем будет решаться по мере выхода новых версий WSL, либо с применением альтернативных решений, в том числе и от сторонних разработчиков, как например WSL SSH Launcher , который можно загрузить из Microsoft Store и использовать для запуска сервиса ssh в среде WSL. Программа платная ($0.99), но имеется и бесплатная пробная версия.

    Страницы с описанием и примерами команд подсистемы WSL:

    BASH — командная оболочка BASH в подсистеме Windows для Linux (WSL).

    WSL — выполнение команд Linux и конфигурирование параметров подсистемы Windows для Linux (WSL) в Windows 10

    WSLconfig — конфигурирование параметров подсистемы Windows для Linux (WSL) в Windows 10

    В заключение, стоит добавить, что в среде Windows 10 можно установить Linux, как впрочем, и любую другую ОС, на виртуальной машине Hyper-V.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *