Pmonline.ru

Пром Онлайн
3 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Запуск Linux в Windows — это просто

Запуск Linux в Windows — это просто!

Оригинал: Running Linux on Windows is Easy
Автор: Swapneel Mehta
Дата публикации: 11 декабря 2019 года
Перевод: А. Кривошей
Дата перевода: февраль 2020 г.

У большинства пользователей Windows в какой-то момент их жизни был друг, который превозносил достоинства операционных систем, основанных на Linux. Это, конечно, не считая того, что поклонники Apple радостно хвалят последние обновления MacOS. Но после фиаско Butterfly Keyboard, за которым последовала «терка для сыра» Mac Pro, было достигнуто тихое согласие о том, что Apple может слишком долго испытывать терпение своих пользователей. Не так давно установка новой операционной системы для ее проверки потребовала значительных технических знаний, касающихся разбиения жесткого диска, создания загрузочного носителя и т.д. Однако сегодня мы собираемся взглянуть на альтернативу, которая есть у пользователей Windows — опробовать операционную систему Linux безо всяких трудностей, учитывая внедрение поддерживающего программного обеспечения, инструментов и экосистем в Microsoft Windows.

Microsoft уже некоторое время работает над тем, чтобы стать более интегрированным с открытым исходным кодом. Это началось во время приобретения компанией GitHub и продолжается, когда она стремится добавить поддержку Linux в Windows. Так что же это за поддержка и как обычные пользователи могут извлечь из этого максимум выгоды? Давайте внимательнее посмотрим на это. Практически запускать Linux под Windows не нужно, но прежде чем мы углубимся в это, краткое введение в Linux и его варианты.

Ядро Linux началось как проект Линуса Торвальдса и превратилось в одну из самых широко распространенных операционных систем в мире. Как утверждает Википедия, имя Linux в разговорной речи используется для описания семейства UNIX-подобных операционных систем с открытым исходным кодом на основе ядра Linux, ядра операционной системы, впервые выпущенного Торвальдсом 17 сентября 1991 года. Linux, как правило, упаковываются в чем-то, что называется дистрибутив.

Подсистема Windows для Linux

Рисунок 1: Подсистема Windows для Linux (Источник: Microsoft)

Различные варианты дистрибутивов основаны на комбинациях ядра Linux и вспомогательного системного программного обеспечения и библиотек, многие из которых предоставлены проектом GNU. Популярные дистрибутивы Linux включают Debian, Fedora и Ubuntu. Коммерческие дистрибутивы включают Red Hat Enterprise Linux и SUSE Linux Enterprise Server. Дистрибутивы Linux для настольных компьютеров включают систему управления окнами, такую как X11 или Wayland, и среду рабочего стола, такую как GNOME или KDE Plasma 5. В дистрибутивах, предназначенных для серверов, может вообще отсутствовать графика, или может быть включен стек решений, такой как LAMP (это сокращение от операционной системы Linux, сервера Apache HTTP, системы управления реляционными базами данных MySQL и языка программирования PHP). Поскольку Linux свободно распространяется, любой может создать дистрибутив для любых целей.

Хотя Linux изначально разрабатывался для использования на персональных компьютерах на основе архитектуры Intel x86, с тех пор он был перенесен на большее количество платформ, чем любая другая операционная система. Фактически, большинство мобильных телефонов с Android и его вариантами основаны на парадигме, популяризированной Linux. Примечательно, что Linux является ведущей операционной системой на серверах и других крупных системах, таких как мэйнфреймы, и единственной ОС, используемой на суперкомпьютерах Top 500. Одни только эти факты подчеркивают, насколько важно для разработчиков и пользователей иметь возможность устанавливать и использовать такую разнообразную платформу. Наконец, установка Linux на Windows теперь проще, чем когда-либо!

Виртуальные машины

Под виртуальными машинами понимается создание «подсистемы» в исходной операционной системе, откуда вы можете загружать новую операционную систему, все еще работая в родительской операционной системе. Учитывая, что виртуальная машина практически полностью воспроизводит работу параллельной операционной системы, ей требуется доля оперативной памяти и вычислительной мощности при работе на машине. Тем не менее, это одно из наиболее полноценных представлений операционной системы, вызывающее минимальные проблемы при выполнении требований к системным ресурсам.

Как правило, установка виртуальной машины упрощается с помощью таких инструментов, как Virtualbox, VMware Player и т. д., Которые требуют только загрузки ISO-образа ОС, как это требуется для установки на стандартном компьютере. Остальная часть процесса включает в себя только настройку системы!

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

Cygwin

Cygwin структурирован так, чтобы служить набором инструментов, позволяющих запускать программное обеспечение Linux в Windows, если оно было перекомпилировано для этой цели. Большая часть программного обеспечения, доступного для Linux, уже отвечает этому требованию, но тонкое отличие, которое необходимо подчеркнуть, заключается в том, что оно предлагает не среду Linux, а скорее среду, подобную Linux, для Windows. Для тех пользователей, которым не хватает командной строки Linux и соответствующих программ, это может быть жизнеспособной альтернативой, чтобы попытаться повторить ощущение среды Linux для Windows.

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

Читайте так же:
Зависание при загрузке windows 7

Docker и контейнеры Linux для Windows

Появление Docker серьезно изменило правила игры для запуска большинства программных инструментов в облаке. Windows Server, один из отраслевых стандартов и широко используемая операционная система, выпустила новые функции, поддерживающие контейнерные приложения в координации с Docker. Фактически, объявление о выпуске на DockerCon было чрезвычайно хорошо воспринято аудиторией, включающей многих разработчиков, работающих с контейнеризованными приложениями. Конечно, технически это не означает, что в системе работает Linux; но существуют контейнерные образы, которые можно запускать на машинах Windows. Фактически, в настоящее время широко доступны контейнеризованные образы большинства дистрибутивов Linux, хотя некоторые содержат только базовые функции командной строки.

Разработчики стремились получить возможность запускать любой контейнер, Windows или Linux, на одном компьютере. Эта функция, как объявила Docker Team, использует Hyper-V isolation для запуска ядра ОС для поддержки работающих контейнеров. Эта функция доступна не только на Windows Server, но и на Windows 10 для тех, кто заинтересован в ее использовании.

Докеризированные версии дистрибутивов Linux довольно популярны

Рисунок 2: Докеризированные версии дистрибутивов Linux довольно популярны (Источник: Carbon Black)

Windows Subsystem for Linux (WSL)

Лучшим способом запуска Linux в Windows 10 может быть только введение Microsoft Bash и, следовательно, возможность «установить» Ubuntu и некоторые другие дистрибутивы Linux из Microsoft Store. Причина этих усилий была довольно проста — разработчики, использующие Windows, также должны использовать Linux, и Windows не только сделала себя более привлекательной платформой для разработчиков программного обеспечения и веб-приложений, но и подтвердила свою приверженность открытому исходному коду. Ранее для тестирования веб-приложений и программного обеспечения требовалась запутанная цепочка получения инструментов для работы, чтобы моделировать и запускать тесты для инструментов Linux на компьютерах с Windows. Введение WSL значительно сократило этот рабочий процесс.

Конфигурирование среды WSL включает в себя запуск PowerShell для установки дополнительных разрешений, за которой следует быстрый поиск и установка нужного дистрибутива Linux из Microsoft Store. Вы можете выбрать из Ubuntu, openSUSE, Kali Linux и Debian. Это действительно очень просто!

Как работать с Linux используя Windows

Как работать с Linux используя Windows

Если вы только начали свой путь разработчика и до сих используете операционную систему семейства Microsoft Windows, то уже наверняка столкнулись с ситуацией, когда ваш инструментарий отличается от того, что установлено у большинства людей из этой профессии. Чаще всего проблемы начинаются при работе в командной строке. Дело в том, что Windows не является POSIX-совместимой операционной системой, поэтому в ней отсутствует базовый набор прикладных программ, который необходим для разработки.

Этот вопрос можно решить установкой какого-либо из многочисленных дистрибутивов Linux в качестве основной, либо альтернативной операционной системы. Для новичков есть способ проще и быстрее — технологии виртуализации. Об этом и поговорим.

Ubuntu из Microsoft Store

Если вы работаете на Windows версии 10 с архитектурой x64, то можно можно воспользоваться встроенным решением и установить слой совместимости (Windows Subsystem for Linux) на основе Ubuntu Linux через магазин приложений Microsoft Store.

Microsoft Store - Ubuntu

Перед тем как начать, необходимо убедиться, что системные требования соответствуют рекомендованным. Для этого запустите приложение Microsoft Store, введите в графе поиска Ubuntu и перейдите по найденной ссылке. Если ранее Windows не обновлялся, то вероятней всего вы получите соответствующее указание сделать это до начала установки Ubuntu. Если всё OK, то нажимайте на кнопку «Получить» и через несколько минут (в зависимости от скорости интернет соединения) вы получите сигнал об успешной установке приложения.

Первый запуск может вызвать ошибку Error: 0x8007007e и предложение прочитать инструкцию по её решению https://aka.ms/wslinstall. Если хотите сэкономить время, то просто запустите PowerShell (не путать с cmd ) от имени администратора и выполните следующую команду:

После этого компьютер попросит перегрузиться, а потом нужно снова запустить приложение Ubuntu. В случае удачной установки откроется интерпретатор командной строки с предложением ввести имя пользователя и пароль. Выглядеть это будет вот так:

Преимущество такого способа установки позволяют стереть грань между операционными системами и получить доступ ко всему инструментарию Linux ( bash , ssh , git , apt и так далее) из стандартной командной строки Windows не теряя привычное окружение и оставаясь на одном файловом уровне.

Ссылки на официальную документацию:

VirtualBox

Если вы работаете на Windows версии ниже 10 или хотите получить изолированную операционную систему Linux, да ещё и с графическим окружением, то можно воспользоваться сторонним бесплатным программным продуктом под названием VirtualBox.

Инсталлятор Oracle VM VirtualBox для Windows Hosts
Ссылка на скачивание: Download Oracle VM VirtualBox

Образ операционной системы Ubuntu Linux в формате ISO
Ссылка на скачивание: Download Ubuntu Desktop

Для начала необходимо установить и запустить приложение VirtualBox.

VirtualBox главная страница

Нажимаем кнопку «Создать», выбираем из списка тип операционной системы «Linux», если нет своих предпочтений по дистрибутиву, то выбираем версию «Ubuntu» 32 или 64 битной архитектуры, а название можно ввести любое.

Читайте так же:
Закончилась лицензия на виндовс 10 что делать

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

Указываем объём оперативной памяти выделенной под виртуальную систему. Рекомендованный объём составляет 1024 MB.

VirtualBox выбор размера оперативной памяти

Указываем объём дискового пространства выделенного под виртуальную систему. Рекомендованный объём составляет 10 GB.

VirtualBox выбор жесткого диска

Тип виртуального жёсткого диска можно оставить как есть — VDI (VitrualBox Disk Image).

VirtualBox выбор типа жесткого диска

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

VirtualBox выбор формата хранения жесткого диска

Имя и размер файла можно оставить без изменений и сразу нажать на кнопку «Создать».

VirtualBox выбор имени и размера жесткого диска

По завершению у вас будет создана виртуальная машина, но она пока без операционной системы. Для того чтобы её установить, нужно скачать Ubuntu Linux (32-bit или 64-bit, в зависимости от того, что было выбрано на шаге, где мы указывали тип ОС).

Нажатие на кнопку «Запустить» должно привести к появлению диалогового окна с предложением указать путь до скаченного ISO образа. Сделайте этого и нажмите кнопку «Продолжить»

VirtualBox выбор загрузочного диска

Виртуальная машина автоматически будет выполнять часть процессов, но в некоторых операциях всё же потребуется участие пользователя.

Выберите языковую поддержку в списке слева и нажмите «Установить Ubuntu».

ubuntu установка - выбор языка

Можно загрузить обновления сразу на этапе установки.

ubuntu установка - загрузка обновлений

Без особых опасений выбираем пункт «Стереть диск и установить Ubuntu» и двигаемся дальше.

ubuntu установка - очистка диска

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

ubuntu установка - выбор раскладки клавиатуры

Заполните поля и выберите режим входа в систему.

ubuntu установка - ввод информации пользователя

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

ubuntu процесс установки

По завершению виртуальный компьютер перезагрузится и вы попадёте в уже установленную среду Ubuntu Linux.

Но это ещё не всё. Весьма желательно установить так называемые «Дополнения гостевой ОС». Они содержат драйверы и прочие системные файлы, необходимые для наилучшей производительности и обеспечения дополнительных функциональных возможностей между виртуальной и гостевой операционными системами.

Выберите пункт меню «Устройства» программы VitrualBox, подпункт «Подключить образ диска Дополнений гостевой ОС…» и дождитесь предложение запустить приложение для автоматического запуска с виртуального привода.

Windows Subsystem for Linux

Windows Subsystem for Linux (WSL) — подсистема Windows для приложений на базе Linux.

Подсистему WSL без лишних громких слов поместили в код Windows 10 (билд № 14251) в конце января 2016 года. Несколько дней спустя Алекс Ионеску высказал предположение о том, что две новые подсистемы внутри файлов lxcore.sys и lxss.sys могут стать вспомогательным средством разработки приложений под Linux для Windows-программистов. Участникам программы тестирования Windows Insider этот функционал стал доступен в Windows 10 Insider Preview Build 14316. Образ Linux был предоставлен партнером Microsoft — компанией Canonical (разработчиком Ubuntu) и загружается из Windows Store.

Главное предназначение подсистемы WSL состоит в том, чтобы эмулировать Linux (на начальном этапе — Ubuntu) в пользовательском режиме. В результате можно запускать нативную оболочку Bash для Ubuntu под операционной системой Windows. Подсистема WSL еще не готова к повсеместному использованию. Представитель компании Canonical сказал, что сейчас «она находится на ранней стадии — это всего лишь бета-версия».

Принцип реализации

Wsl-2.png

Это не разновидность среды Cygwin, т.к. чтобы Linux-приложения Cygwin могли нативно работать под Windows, их код специально нужно перекомпилировать. А в WSL можно запускать «родные» ELF-бинарниках Ubuntu, с идентичной контрольной суммой, которые запускаются прямо из-под Windows. Для упрощения установки для пользователей Windows подготовлена специальная сборка Ubuntu, содержащая образ корневой системы с набором базовых приложений.

В WSL удалось полностью избавиться от использования ядра Linux, по сути пользовательское окружение Ubuntu работает поверх ядра Windows. Запуск исполняемых файлов Linux реализован путём включения специальной прослойки (код подсистемы закрыт), которая в режиме реального времени транслирует системные вызовы Linux в системные вызовы Windows. Концептуально, такой подход чем-то вроде среды WINE (только транслирует не WinAPI -> LinuxAPI, а наоборот LinuxAPI -> WinAPI).

Функциональность

Пользователю доступны apt, ssh, rsync, find, grep, awk, sed, sort, xargs, md5sum, gpg, curl, wget, apache, mysql, redis, python, perl, ruby, php, gcc, tar, vim, emacs, diff, patch и большинство бинарных пакетов из архива Ubuntu, содержащих консольные и серверные приложения. При этом некоторые приложения пока остаются неработоспособны, например, из-за неполной эмуляции терминала VT100 невозможно использовать byobu, screen и tmux.

Приложения Ubuntu выполняются в отдельном представлении файловой системы, повторяющей организацию файловой иерархии в Linux. Файловые системы Windows доступны на запись в форме разделов, примонтированных в директории /mnt. Например, директория «C:UsersKirklandDownloads» доступна как «/mnt/c/Users/Kirkland/Downloads». А для Windows-приложений корневая ФС Ubuntu видна как «C:UsersKirklandAppDataLocalLxssrootfs». Для установки дополнительных пакетов и обновления системы применяется инструментарий apt с загрузкой штатных пакетов и обновлений из репозиториев Ubuntu.

В WSL подготовлена новая инфраструктура ядра Windows, которая предоставляет слой совместимости с Linux syscall API и специальный загрузчик, что позволяет напрямую запускать уже поставляемые в Ubuntu немодифицированные исполняемые файлы, так же как запускаются обычные программы для Windows. Для WSL в ядре Windows была специально реализована поддержка fork() и некоторых других специфичных системных вызовов POSIX и Linux, что позволило добиться реализации, более эффективной, чем при использовании эмуляции.

Читайте так же:
Домашняя страница виндовс 7

Система может запускать серверные приложения (поддержка графических приложений не планируется), но рассчитана скорее на их тестирование, чем на развёртывание замены Linux-серверов для промышленного применения. Однако утилита sysbench демонстрирует практически эквивалентные показатели работы процессора, оперативки и операций ввода-вывода. Система прошла подавляющее большинство LTP-тестов на производительность и работает хорошо. Проект нацелен только на предоставление инструментария командной строки для разработчиков.

Установка

Windows-subsystem-bash-linux-beta.jpg

По умолчанию подсистемы WSL в Windows нет. Для того чтобы ее установить, необходимо найти «Windows Features», выбрать пункт «Turn Windows features on or off» и включить «Windows Subsystem for Linux (Beta)». После этого нужно открыть Microsoft Store и установить образ Ubuntu.

Исторические корни

Идея уходит корнями в подсистему POSIX операционной системы Windows NT. NT Posix была задумана для того, чтобы запускать нативные бинарные коды для Unix внутри Windows NT. WSL не основывается на ранее доступной подсистеме POSIX (SUA), которая в NT 3.5.1 содержала лишь минимальный набор системных вызовов и позднее была заменена на систему Services for Unix (SFU), основанную на наработках Interix.

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

Подсистема Windows для Linux

Подсистема Windows для Linux ( WSL ) — это уровень совместимости для запуска двоичных исполняемых файлов Linux (в формате ELF ) изначально в Windows 10 и Windows Server 2019 .

В мае 2019 года, WSL 2 был объявлен, [2] введения важных изменений , такие как реальное ядро Linux , [3] с помощью подмножества Hyper-V функций. С июня 2019 года WSL 2 доступен клиентам Windows 10 через программу Windows Insider , включая домашнюю версию. [4]

СОДЕРЖАНИЕ

  • 1 Обзор
  • 2 Введение и доступность
  • 3 Развитие
  • 4 Архитектура
    • 4.1 WSL 1
      • 4.1.1 Служба диспетчера LXSS
      • 4.1.2 wsl.exe
        • 4.1.2.1 Примеры

        Обзор [ править ]

        Первый выпуск WSL предоставляет Linux -совместимого интерфейс ядра , разработанный Microsoft, не содержащее ядро Linux кода, [5] , который затем может запустить GNU пользовательское пространство поверх него, например , как у Ubuntu , [6] [7] [8] [9] openSUSE , [10] SUSE Linux Enterprise Server , [11] [12] [13] Debian [14] и Kali Linux . [15] Такое пользовательское пространство может содержать оболочку GNU Bash и командный язык с собственными инструментами командной строки GNU ( sed, awk и т. д.), интерпретаторы языков программирования ( Ruby , Python и т. д.) и даже графические приложения (использующие сервер X11 на стороне хоста). [16]

        Архитектура была переработана в WSL 2, [2] с ядром Linux, работающим в облегченной среде виртуальной машины .

        Введение и доступность [ править ]

        Когда 2 августа 2016 года было представлено юбилейное обновление, был доступен только образ Ubuntu. Fall Творцы Update , выпущенный 17 октября 2017 года, перенес процесс установки дистрибутивов в Windows Store , и введенный SUSE изображения. [13]

        WSL доступен только в 64-битных версиях Windows 10 начиная с версии 1607. Он также доступен в Windows Server 2019.

        Microsoft анонсировала WSL 2 6 мая 2019 г. [2], который включает полностью новый бэкэнд на основе виртуальных машин (на основе подмножества функций Hyper-V) вместо предыдущего уровня адаптации системных вызовов, который планируется выпустить через Windows. Инсайдерская программа в июне 2019 года.

        Развитие [ править ]

        Первый набег Microsoft на достижение Unix-подобной совместимости в Windows начался с подсистемы Microsoft POSIX , замененной службами Windows для UNIX через MKS / Interix , которая в конечном итоге была устарела с выпуском Windows 8.1 . Технология, лежащая в основе подсистемы Windows для Linux, возникла в еще не выпущенном Project Astoria , который позволил некоторым приложениям Android работать в Windows 10 Mobile . [17] Впервые он был доступен в сборке 14316 Windows 10 Insider Preview. [18]

        В то время как предыдущие проекты Microsoft и стороннего Cygwin были сосредоточены на создании своих собственных уникальных Unix-подобных сред на основе стандарта POSIX , WSL нацелен на совместимость с Linux. Вместо того, чтобы заключать неродные функции в системные вызовы Win32, как это было в предыдущих системах, в первоначальной конструкции WSL (WSL 1) использовалась исполнительная часть ядра NT для обслуживания программ Linux в качестве особых изолированных минимальных процессов (известных как «пико-процессы»), подключенных к ядру. режим «поставщики пикосигналов» как выделенный системный вызов и исключение обработчики, отличные от обработчиков ванильного процесса NT, предпочитая повторно использовать существующие реализации NT везде, где это возможно. [19]

        Хотя WSL (благодаря этой первоначальной конструкции) был намного быстрее и, возможно, намного более популярным, чем его собратья из проектов UNIX-on-Windows, инженеры ядра Windows столкнулись с трудностями при попытке повысить производительность WSL и совместимость с системными вызовами, пытаясь изменить существующее ядро ​​NT для распознавания и правильно работать с API Linux . На конференции Microsoft Ignite в 2018 году инженеры Microsoft представили общий обзор новой «облегченной» технологии виртуальных машин Hyper-V для контейнеризации, где виртуализированное ядро ​​может напрямую использовать примитивы NT на хосте. [20] В 2019 году Microsoft анонсировала полностью переработанную архитектуру WSL (WSL 2) с использованием этой облегченной технологии виртуальных машин, в которой размещены реальные (настроенные) образы ядра Linux, заявив о полной совместимости с системными вызовами. [3]

        Microsoft рассматривает WSL как «в первую очередь инструмент для разработчиков, особенно веб-разработчиков и тех, кто работает над проектами с открытым исходным кодом или с ними». [16] В сентябре 2018 года Microsoft заявила, что «WSL требует меньше ресурсов (ЦП, память и хранилище), чем полноценная виртуальная машина» (до WSL это был самый прямой способ запуска программного обеспечения Linux в среде Windows), в то время как также позволяет пользователям использовать приложения Windows и инструменты Linux с одним и тем же набором файлов. [16]

        Архитектура [ править ]

        WSL 1

        Служба диспетчера LXSS

        LXSS Manager Service — это служба, отвечающая за взаимодействие с подсистемой (через драйверы lxss.sys и lxcore.sys ) и способ, которым Bash.exe (не путать с оболочками, предоставляемыми дистрибутивами Linux) запускает процессы Linux, а также за обработку системные вызовы Linux и двоичные блокировки во время их выполнения. [21]

        Все процессы Linux, запущенные конкретным пользователем, попадают в «Экземпляр Linux» (обычно первым вызываемым процессом является init ). После закрытия всех приложений экземпляр закрывается.

        wsl.exe
        WSL

        Разработчики)Microsoft
        изначальный выпуск2 августа 2016 г . ; 4 года назад ( 2016-08-02 )
        Операционная системаМайкрософт Виндоус
        ТипКомандование
        Интернет сайтдокументы .microsoft .com / en-us / windows / wsl /

        wsl.exe Команда используется для управления распределения в Windows , Subsystem для Linux на командной строке . Он может отображать доступные дистрибутивы, устанавливать дистрибутивы по умолчанию и удалять дистрибутивы. [22] Эту команду также можно использовать для запуска двоичных файлов Linux из командной строки Windows или Windows PowerShell . [23] wsl.exe заменяет lxrun.exe устаревшую в Windows 10 1803 и более поздних версиях. [24]

        Примеры

        Запустите uname команду в WSL с помощью PowerShell.

        Пример использования sudo команды из командной строки.

        Доступ к оборудованию и файловой системе

        В конструкции WSL 1 не было аппаратной эмуляции / виртуализации (в отличие от других проектов, таких как coLinux), и в ней напрямую использовалась файловая система хоста (через VolFS и DrvFS ) [25] и некоторые части оборудования, такие как сеть, что гарантирует взаимодействие. Например, к веб-серверам можно получить доступ через те же интерфейсы и IP-адреса, настроенные на хосте, и имеют те же ограничения на использование портов, требующих административных разрешений, или портов, уже занятых другими приложениями. [26]

        Существуют определенные местоположения (например, системные папки) и конфигурации, доступ / изменение которых ограничены, даже при запуске от имени пользователя root, с помощью sudo из оболочки. Экземпляр с повышенными привилегиями должен быть запущен, чтобы «sudo» предоставил реальные привилегии root и разрешил такой доступ. [16]

        Ограничения

        WSL 1 не может запускать все программное обеспечение Linux, такое как 32-разрядные двоичные файлы, [27] [28] или те, которые требуют определенных служб ядра Linux, не реализованных в WSL. Из-за отсутствия какого-либо «настоящего» ядра Linux в WSL 1 модули ядра, такие как драйверы устройств, не могут быть запущены. WSL 2, однако, использует живые виртуализированные экземпляры ядра Linux.

        Можно запускать некоторые графические (GUI) приложения (например, Mozilla Firefox ), установив сервер X11 в среде Windows (хост) (например, VcXsrv или Xming ), [29] хотя и не без оговорок, таких как отсутствие поддержка звука (хотя это можно исправить, установив PulseAudio в Windows аналогично X11) или аппаратное ускорение (что приводит к снижению производительности графики). Поддержка OpenCL и CUDA в настоящее время также не реализуется, хотя планируется в будущих выпусках. [30] [31]

        Microsoft заявила, что WSL был разработан для разработки приложений, а не для настольных компьютеров или производственных серверов , и рекомендовала использовать для этих целей виртуальные машины ( Hyper-V ), Kubernetes и Azure . [16]

        Контрольные показатели

        В тестах производительность WSL 1 часто приближается к родному Linux Ubuntu, Debian, Intel Clear Linux или другим дистрибутивам Linux. В некоторых тестах ввод-вывод является узким местом для WSL. [32] [33] [34] Microsoft утверждает, что переработанный бэкэнд WSL 2 предлагает 20-кратное увеличение скорости некоторых операций по сравнению с WSL 1. [3]

        WSL 2

        Версия 2 вносит изменения в архитектуру. Microsoft выбрала виртуализацию с помощью высоко оптимизированного подмножества функций Hyper-V, чтобы запускать ядро ​​и дистрибутивы (на основе ядра), обещая производительность, эквивалентную WSL 1. Для обратной совместимости разработчикам не нужно ничего менять. в своих опубликованных дистрибутивах. Параметры WSL 2 могут быть изменены с помощью глобальной конфигурации WSL , содержащейся в файле INI с именем .wslconfig в папке профиля пользователя . [35] [36]

        Установка дистрибутива находится внутри файловой системы в формате ext4 внутри виртуального диска , а файловая система хоста прозрачно доступна через протокол 9P , [37] аналогично другим технологиям виртуальных машин, таким как QEMU . [38] Для пользователей Microsoft обещала в 20 раз увеличить производительность чтения / записи WSL 1. [39] В Windows для доступа к гостевым файлам Linux с использованием префикса пути UNC предоставляется перенаправитель сети IFS . \wsl$

        WSL 2 требует Windows 10 версии 1903 или выше со сборкой 18362 или выше для систем x64 и версии 2004 или выше со сборкой 19041 или выше для систем ARM64. [40]

        Установка ОС Linux в Windows 11 с использованием WSL 2

        На текущий момент ОС MS Windows 11 позволяет запустить следующие дистрибутивы Linux:

        • Debian
        • Kali Linux Rolling
        • OpenSUSE Leap 42
        • SUSE Linux Enterprise Server v12
        • Ubuntu 16.04 LTS
        • Ubuntu 18.04 LTS
        • Ubuntu 20.04 LTS

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

        • Запустить командную строку или Windows Терминал от имени администратора
        • Ввести следующую команду
        • НажатьEnter

        Рис.1 Установка WSL

        Команда —install позволяет выполнить следующие действия:

        • установить дополнительные компоненты WSL
        • установить платформу виртуальной машины;
        • загрузить и установить ядро WSL;
        • скачать и установить дистрибутив Linux (по умолчанию устанавливается Ubuntu)
        • По окончании данной процедуры перезагрузить компьютер.

        Рис.2 Установка WSL

        • После перезагрузки продолжится инсталляция и осуществится запуск Ubuntu 20.04 LTS (именно эта версия устанавливается на момент написания статьи) с последующей первоначальной настройкой, где необходимо будет создать имя пользователя и пароль.

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

        Рис.3 Создание пользователя и пароля в ОС Ubuntu

        Установка определенного дистрибутива Linux ОС MS Windows 11 с использованием WSL2

        • Запустить командную строку или Windows Терминал от имени администратора
        • Для получения списка доступных дистрибутивов Linux необходимо ввести следующую команду

        wsl —list —online

        • Нажать Enter

        Рис.4 Список доступных дистрибутивов Linux

        • После выбора нужной операционной системы ввести команду (операционная система может быть выбрана другая):

        wsl —install -d Kali-Linux

        Рис.5 Установка Kali Linux

        • По окончании установки запуститься выбранная операционная система.

        Рис.6 Создание пользователя и пароля в ОС Kali Linux

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

        Для последующего запуска установленного дистрибутива Linux можно воспользоваться одним из вариантов:

        • открыть меню Пуск> Все приложения и выбрать, например, Ubuntu

        Рис.7 Запуск ОС Linux

        • в командной строке или Windows Терминал ввести название установленной Linux системы, например, ubuntu и нажать Enter

        Рис.8 Запуск ОС Linux

        • в командной строке или Windows Терминал ввести команду wsl . Будет запущен дистрибутив Linux по умолчанию. Если установлено несколько дистрибутивов, ввести, например команду wsl -d Kali-Linux

        Удаление дистрибутивов Linux и отключение компонента Подсистема Windows для Linux

        • Открыть Параметры ОС MS Windows 11
        • Перейти в раздел Приложения>Приложения и возможности

        Рис.9 Удаление дистрибутивов Linux

        • Выбрать дистрибутив Linux, который необходимо удалить, нажать на пиктограмму справа и выбрать Uninstall

        Рис.10 Удаление дистрибутивов Linux

        • Если в дальнейшем не планируется устанавливать дистрибутивы Linux, можно также удалить WindowsSubsystemforLinuxUpdate и WindowsSubsystemforLinuxUpdateWSLgPreview

        Рис.11 Удаление дополнительных файлов WSL

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

        Рис.12 Компоненты Windows

        Чтобы открыть данное окно можно воспользоваться одним из вариантов:

        • Открыть Параметры ОС MS Windows 11, выбрать Приложения>Optionalfeatures> Другие компонентыWindows

        Рис.13 Запуск компонентов Windows

        • открыть Панель управления> Программы и компонентыWindows
        • в окне Выполнить ввести OptionalFeatures

        Если в автоматическом режиме ядро подсистемы Windows для Linux не обновляется (например, есть возможно обновить только вручную, с использованием команды wsl —update), необходимо включить параметр центра обновления Windows Получать обновления для других продуктовMicrosoft при обновленииWindows.

        Рис.14 Настройка дополнительных параметров обновлений

        Рис.15 Включение параметра Получать обновления для других продуктов Microsoft при обновлении Windows

        Ошибка запуска ОС Linux может быть вызвана отсутствием включенной опции поддержки виртуализации в BIOS или UEFI

        Если запуск подсистемы Windows для Linux выполняется в виртуальной среде, например с использованием платформы VMware Workstation, то необходимо:

        • выключить гостевую систему Windows 11
        • открыть настройки гостевой системы Windows 11
        • в разделе Hardware выбрать Processors и установить флажок в чекбоксе Virtualize Intel VT-x/EPT or AMD-V/RVI

        Рис.16 Настройка поддержки виртуализации в VMware Workstation

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

        голоса
        Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector