Эмулятор линукс что такое

Обновлено: 03.07.2024

Эмуляция (англ. emulation) — воспроизведение программными или аппаратными средствами либо их комбинацией работы других программ или устройств.

Эмулятор Linux — программа, позволяющая имитировать операционную систему Linux без её установки на компьютер.

KDE for Windows Installer 4.10.2

Бесплатная программа-эмулятор операционной системы Linux для установленной Windows.

Что такое KDE?

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

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

В этом есть немалая заслуга разработчиков популярных графических оболочек Gnome и KDE, которые в последних редакциях обзавелись возможностями работы с виджетами, «стеклянным» интерфейсом и другими «красивостями».

Вы можете возразить мне, что все это есть в новой Windows 7. Согласен… Но разве Вам никогда не хотелось попробовать поработать с другими ОС или хотя бы потестировать программы из их арсенала? То-то же :)

Сегодня мы посмотрим, что же получится, если на «старую-добрую» Windows XP «повесить» новый графический интерфейс — знаменитый линуксовский KDE.

Первый вопрос — зачем это надо? Сами разработчики делают упор на то, что простой пользователь, установив KDE, сможет попробовать поработать с линуксовскими программами, которые входят в состав KDE for Windows, а это может помочь ему (простому юзверю :)) при переходе на UNIX-подобные системы.

Установка KDE

Не будем оспаривать сие мнение, а перейдем ко второму вопросу — как это сделать? А здесь уже немного проще.

Главная проблема только в том, что Вы должны быть обладателем безлимитного Интернет-соединения, так как придется скачивать весьма большое количество установочных файлов (лично у меня полная коллекция приложений KDE весила 338 мегабайт и это без локализаций!).

Если трафик для Вас не препятствие, то скачиваем архив с инсталлятором и приступаем…

Окно выбора типа установки KDE for Windows Installer 4.10.2

И первым делом нам надо определиться с типом установки. Мы можем установить KDE из Интернета, из локальной папки, либо только докачать в локальную папку нужные программы. Если Вы запустили инсталлятор впервые, то ясное дело, никаких файлов для локальной установки у Вас нет, поэтому смело оставляем свой выбор на первом пунктике и жмем «Next».

Окно выбора режима установки KDE for Windows Installer 4.10.2

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

Он ориентирован на обычного пользователя и не требует от нас лишних «телодвижений» :). То-есть работает принцип «выбрал-загрузил-само установилось» :). «Package Manager» же предоставляет возможность не только выбирать и устанавливать готовые пакеты, но и ставить сторонние неоткомпилированные программы, которые можно скачать в виде исходного кода (стандартный способ инсталляции в Linux).

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

Чуть ниже можно выбрать режим компиляции скачиваемых программ под Windows. Здесь выбираем на свой вкус и цвет :).

Единственное но — это то, что при выборе разных компиляторов Вы сможете устанавливать только ту часть софта, которая может быть им преобразована. Тогда как другая половина, которая компилируется другим способом, будет попросту скрыта… ИМХО, конечно же, но MinGW 4 — более продвинутый, тогда, как с MSVC — попроще для обычного пользователя.

Выбираем и снова жмем «Next».

Окно настройки подключения для установки KDE for Windows Installer 4.10.2

Следующий шаг — указание параметров Интернет-соединения. Здесь обычно подходит первый вариант (при условии кабельного или DSL-подключения). Если же соединение не происходит, укажите второй пункт.

Здесь также можно задать и ручную переадресацию на прокси-сервер, но до этого, я думаю, дело не дойдет, так что оставляем свой выбор на первом пункте и опять нажимаем «Next».

Окно выбора сервера для скачивания KDE for Windows Installer 4.10.2

Окно выбора версии KDE for Windows Installer 4.10.2

В открывшемся окне выбираем версию KDE для скачивания. По умолчанию выбор стоит на «последней стабильной» (4.4.4), однако в ней отсутствует русская локализация. Если аглицкий интерфейс Вас не пугает, можно смело жать «Next», в противном случае придется пользоваться более ранней версией (4.4.1, например).

Окно выбора пакетов установки KDE for Windows Installer 4.10.2

Теперь самое главное — выбор пакетов программ для установки. В этом окне слева есть три кнопки, которые позволяют перейти к выбору софта, языков локализации и пакетов орфографии. В режиме End User весь выбор заключается во включении флажков напротив нужных пакетов, поэтому отмечаем все стабильные программы и снова нажимаем «Next».

В следующем окне нам сообщат, что кроме выбранных нами программ на компьютер будет скачан и установлен еще ряд приложений и библиотек, нужных для работы KDE. Соглашаемся с этим (а куда нам деется :)) и привычно жмем «Next» (теперь уже наконец-то в последний раз :)).

Окно загрузки KDE for Windows Installer 4.10.2

Только сейчас начнется загрузка файлов на наш ПК, которая может занять довольно много времени, поскольку, как уже было сказано выше, скачивается большое количество (не меньше сотни!) разнокалиберных файлов, а также тарболы выбранных нами программ.

Тарболы — это архивы в формате tar.bz2, в которых находятся бинарные коды программ, из которых, при помощи выбранного нами ранее компилятора, будут собраны исполняемые файлы Windows.

Окно завершения установки KDE for Windows Installer 4.10.2

Настройка KDE

После закачки всех файлов перед нами появится окно, которое сообщит об успешной установке KDE. Здесь в качестве последнего штриха отметим пункт «run system settings after exit» для запуска настроек (хотя можно и пропустить этот шаг) и нажмем «Finish».

На этом эпопея инсталляции KDE на Windows заканчивается. Зайдем в меню «Пуск» и в разделе «Все программы» обнаружим новую группу — KDE.

Меню KDE for Windows Installer 4.10.2

Здесь все программы отсортированы по разделам, поэтому найти нужную будет весьма просто. Выбрать есть из чего… Огорчает только малое количество мультимедийных программ (один лишь Amarok) и не самые лучшие представители некоторых других разделов. Так среди установленного софта мы не найдем ни одного приличного текстового процессора или программы для обработки графики.

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

Но самое интересное скрыто от нас. Мы все так же работаем с тем же Windows, к которому «припаяли» несколько линуксовских программок. Но где же сам KDE? Где те «красивости» ради которых мы все и затевали?

Дело в том, что KDE в среде Windows все еще работает не слишком стабильно, поэтому разработчики решили припрятать возможность запуска рабочей среды подальше, чтобы только «избранные» :) смогли полюбоваться красотами нового рабочего стола :).

Конечно шутки-шутками, а посмотреть все же хочется, поэтому создаем резервную точку восстановления системы (так, на всякий случай, а то мало ли… :)) и находим в папке C:\Program Files\KDE\bin файлик plasma-desktop.exe, который и запускаем.

Интерфейс KDE for Windows Installer 4.10.2

Интерфейс KDE

Буквально через пару секунд (зависит от мощности компьютера) привычный рабочий стол исчезнет и заменится полупрозрачной средой KDE с открытой панелью содержимого прежнего рабочего стола.

Панель файлов и папок KDE for Windows Installer 4.10.2

Чем же эта панель лучше привычного десктопа?

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

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

Меню рабочего стола KDE for Windows Installer 4.10.2

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

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

Окно настройки рабочего стола KDE for Windows Installer 4.10.2

Работа с пакетом

Зайдем в главное меню, создадим новую «комнату» (Add Activity) и посмотрим, что можно здесь настроить.

Первая вкладка у нас отвечает за цветовую тему оформления созданного рабочего стола.

Во второй мы можем настроить внешний вид «комнаты». Как видно на скриншоте, есть три варианта организации десктопа. По умолчанию каждая новая «комната» создается в виде «Рабочего стола». На него мы можем устанавливать неограниченное (точнее ограниченное только ресурсами Вашего ПК) количество виджетов и отдельные файлы или ярлыки.

Второй вариант («Просмотр папок») больше всего напоминает нам привычный рабочий стол. Мы выбираем папку для отображения ее содержимого на экране монитора и получаем упорядоченный список всех ее файлов. При этом мы можем в произвольном порядке добавлять виджеты.

И, наконец, последний вариант («Новостная комната») позволяет систематизировать все виджеты в несколько колонок.

Отдельно стоит упомянуть о возможности задавать действия для клавиш мыши, которые настраиваются в соответствующем меню. Мы можем изменить функции правой клавиши и колесика под себя, а также добавить собственные комбинации клавиш.

С KDE можно добавлять дополнительные панели, а также виджеты в неограниченном количестве. По умолчанию панель одна и находится внизу экрана. На ней находится кнопки (по сути виджет), которая заменяет собой стандартный «Пуск», а также обычные электронные часы.

Добавление виджетов в KDE for Windows Installer 4.10.2

Для добавления новых виджетов достаточно в меню экрана кликнуть пункт «Add Widgets». После этого над нижней панелью откроется небольшое окошко с широким выбором мини-приложений. Чтобы начать пользоваться любым из них достаточно перетащить его на нижнюю панель или на рабочий стол.

Аналог меню Пуск в KDE for Windows Installer 4.10.2

На что мы еще не обратили внимания, так это на кнопку, заменяющую собой привычный "Пуск". После клика на ней, появится меню, состоящее из нескольких вкладок.

В первой из них ("Favorites") мы можем обнаружить (или сами разместить) наиболее часто используемые программы и файлы. Здесь же находится форма поиска.

Вкладка "Applications" открывает нам доступ ко всем установленным приложениям KDE.

Третья вкладка ("Computer") служит аналогом обычного раздела "Мой компьютер". Отсюда мы можем начать просматривать все содержимое нашего жесткого диска. Раздел "Recently Used" отображает документы и приложниями, с которыми мы недавно работали. И, наконец, кнопка "Leave", как Вы уже наверное догадались, служит для выхода из системы.

Если нам очень сильно понравился новый интерфейс, разработчики предлагают заменить им стандартный рабочий стол. Для этого понадобится скачать с сайта Майкрософта небольшую утилитку Autoruns for Windows.

Запустив ее, зайдите во вкладку «Logon» и измените значение ключа HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell на plasma-desktop.exe (указываем полный путь к файлу). Однако учтите, что пользоваться стандартным эксплорером Вы больше не сможете, а значит готовьтесь к потере некоторых стандартных функций.

Первое впечатление от пакета

В целом последняя версия KDE производит неплохое впечатление, однако наблюдаются и некоторые недостатки. Так, например, переключение между созданными виртуальными рабочими столами почему-то не работает, хотя новые процессы создаются, а значит ресурсы «пожираются» впустую.

Некоторые приложения, несмотря на заявленную маркировку stable, работают со сбоями (особенно графические, типа Krita). Также не совсем ясно, как можно вызывать системные приложения и свернутые окна (на панели инструментов миниатюры или кнопки для этого отсутствуют).

Одним словом, подменять привычный обозреватель «plasm'енным» пока не стоит, а вот если Вы планируете переходить на Linux (например, приобретать нетбук с которых сейчас очень распространены Unix-подобные операционки), то попробовать KDE в действии явно не помешает.

Тем более, что деинсталляция не составляет особого труда — мы можем либо запустить инсталлятор и, выбрав параметр «Install from local directory», указать в последующем окне «Remove installed packages», либо просто удалить папку с установленной оболочкой, так как в реестр почти ничего не заносится.

Выводы

В общем, в ознакомительных целях установить KDE все же стоит. Ведь кто знает, может завтра придется столкнуться с этим «страшным» и «таинственным» Линуксом… Поэтому к такой «встрече» нужно быть всегда готовым :).

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

Запуск Linux на вашем ПК может быть достигнут либо путем установки ОС Full Linux рядом с вашей установкой Windows, либо с помощью виртуальной машины для ее запуска. В случае, если вы решите установить полную ОС Linux, скорость, с которой она будет работать, будет выше, чем если бы вы использовали программное обеспечение виртуальной машины.

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

На рынке представлен широкий спектр операционных систем на основе Linux, и они известны как дистрибутивы. Вот некоторые из наиболее популярных вариантов дистрибутива Linux:

  • Linux Mint — основан на Ubuntu, прост в использовании, а также поставляется с утилитой mint4win, которая позволяет устанавливать Linux на ваш компьютер, не затрагивая вашу базовую систему.
  • OpenSUSE (Novell) и Fedora (Red Hat) — бесплатные и удобные дистрибутивы Linux
  • Xandros Home Edition — предназначен для начинающих с возможностью запуска Microsoft Office, Adobe Photoshop и т. Д.
  • Ubuntu (версия для настольных компьютеров) — отличный вариант для начинающих пользователей Linux, с отличной поддержкой аппаратных устройств, 6-месячным циклом выпуска, и вы также можете сделать так, чтобы Ubuntu бесплатно отправляла ваши установочные DVD по всему миру.

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

4 инструмента для запуска Linux на ПК с Windows

KNOPPIX: запускать Linux с USB-накопителя или компакт-диска

knoppix - эмулятор linux

KNOPPIX — отличное программное обеспечение, которое позволяет вам загружаться в Linux напрямую с физических CD / DVD или USB-накопителей.

Это приложение содержит большой набор опций программного обеспечения GNU / Linux, может автоматически определять ваши аппаратные возможности и предлагает поддержку широкого спектра видеокарт, звуковых карт, SCSI, а также USB-устройств.

KNOPPIX может использоваться для запуска Linux на вашем настольном ПК, а также может помочь вам спасти вашу систему в случае, если Windows не запустится.

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

WUBI: установить Linux как программное обеспечение

WUBI - установить Linux на Windows

WUBI — это отличный инструмент, который позволяет вам легко установить Linux в качестве программного обеспечения на ПК с Windows. Использование этого метода позволяет повысить скорость обработки, и его можно удалить так же, как и обычное приложение Windows.

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

Другой способ запустить ОС на базе Linux на ПК с Windows — использовать программное обеспечение виртуальной машины. Мы перечислим некоторые из лучших инструментов ниже.

Виртуальные машины для запуска Linux на ПК с Windows

Виртуальная коробка

VirtualBox - для запуска Linux на Windows

VirtualBox — отличный вариант программного обеспечения, позволяющий создавать виртуальные машины Linux и запускать их в окне на рабочем столе Windows. Это приложение основано на архитектуре x86 и поддерживает виртуализацию AMD64 / Intel64.

Это программное обеспечение может работать на различных хостах — Linux, Mac, Windows, Solaris — и также имеет большое количество совместимых гостевых ОС — все версии Windows, Linux и т. Д.

VMware

VMware — еще одно отличное программное обеспечение для виртуализации, которое позволяет вам с легкостью создавать виртуальную ОС Linux на вашем ПК. Это более простая альтернатива, чем установка полноценной ОС Linux, но предлагающая более медленную производительность.

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

Вы можете найти хорошее руководство, объясняющее, как использовать VMware для запуска Linux на вашем ПК. Если вы хотите запустить установку с компакт-диска, нажмите здесь . Если вы хотите запустить установку из файла виртуального образа (.bin, .iso), вы можете перейти на эту страницу .

Вывод

В этой статье мы перечислили некоторые из лучших операционных систем на базе Linux, а затем поговорили о наиболее эффективном способе их запуска на вашем ПК.

Мы хотели бы знать, какое решение вы выбрали и как оно сработало для вас. Не стесняйтесь комментировать ниже.

Нужен срочный доступ к консоли bash или системе Linux? Не волнуйтесь, эти 10 веб-сайтов помогут вам запустить Linux в вашем браузере, согласно makeuseof.


Удивлен? Что ж, нет, потому что ключ кроется в вашем браузере. Вы можете получить доступ к Linux в вашем собственном интернет-браузере прямо из вашей существующей операционной системы.

Все еще не веришь? Почему бы не зайти на эти сайты и не проверить их?

1. JSLinux


JSLinux написан на JavaScript, что делает его одним из самых популярных и надежных онлайн-эмуляторов. Он поддерживает такие веб-браузеры, как Opera, Chrome, Firefox и Internet Explorer.

Вот список эмулируемых устройств, которые вы можете найти на веб-странице технических замечаний JSLinux:

2. Copy.sh


Не только Linux, пользователи также могут запускать следующие операционные системы с помощью Copy.sh:

Windows 98
KolibriOS
Windows 1.01
FreeDOS
OpenBSD
Solar OS

3. Webminal


Этот эмулятор помог студентам и пользователям из более чем 120 стран выучить 1,5 миллиона команд Linux. Фактически, Webminal также помогает вам практиковать сценарии bash, создавать таблицы MySQL и обращаться к ним, а также изучать такие языки, как Java, Rust, Ruby, Python, C и другие.

Пользователи могут смотреть скринкасты с помощью функции Webminal Play и практиковаться в кастинге, а не читать тонны документов. Онлайн-терминал Linux не требует установки и предлагает 100 МБ бесплатного хранилища. Как пользователь, вы можете обмениваться файлами с другими участниками, создавая группы в эмуляторе, что может быть весьма полезно для проверки или отладки проблем в скрипте.

4. Tutorialspoint


Практика команд Linux в браузере не может быть проще этого. Coding Ground от Tutorialpoint предлагает один из лучших вариантов для запуска терминала CentOS в онлайн-интерфейсе.

Время, чтобы добраться до терминала, минимально, всего около 10 секунд на начальный обратный отсчет. Эта платформа также является одним из лучших решений для отработки Node.js, PHO, NumPy, Lua, Oracle Database, Redis, Ruby и многих других онлайн-IDE, включая Linux.

5. JS/UIX Terminal


Терминал JS / UIX очень похож на операционную систему Unix, которая работает в веб-браузерах; для открытия терминала не требуются плагины. Чтобы попрактиковаться в командах на терминале, вы можете войти в систему как гость и просто приступить к работе.

Терминал полностью написан на JavaScript и включает в себя оболочку и виртуальную машину, а также управление процессами, виртуальную файловую систему, экран и отображение клавиатуры. Клавиатура этого терминала поддерживает набор символов US ASCII, который более понятен пользователям.

Если пользователь желает использовать экранную клавиатуру для ввода своих команд, он может получить к ней доступ, нажав кнопку «Показать клавиатуру», расположенную в левом нижнем углу терминала.

6. CB.VU


7. DistroTest


Если вы хотите протестировать свои команды Linux без установки ОС на свой компьютер, у Distrotest есть решение для вас. Этот веб-сайт позволяет пользователям запускать более 300 дистрибутивов Linux прямо из браузера.

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

8. Linux Containers


С помощью контейнеров Linux вы можете запустить 30-минутный демонстрационный сервер, который будет действовать как оболочка для запуска терминала Linux. Canonical спонсирует сам этот проект, поэтому вы можете быть уверены, что получите настоящий веб-сайт для выполнения ваших команд Linux.

9. Codeanywhere


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

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

10. CoCalc


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

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

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

Запуск Linux в вашем веб-браузере

Теперь, когда у вас есть список из нескольких веб-сайтов, которые помогут вам запустить Linux, какой из них вы бы выбрали? Кто бы мог подумать, что запустить систему Linux в веб-браузерах будет так просто?

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

К написанию данной статьи меня побудил вопрос на Тостере, связанный с WSL. Я, после нескольких лет использования систем на ядре Linux, около полугода назад перешел к использованию Windows 10 на домашнем ПК. Зависимость от терминала и Linux окружения в моей работе практически сразу привели меня к вопросу: или ставить виртуалку или попробовать WSL. Я выбрал второе, и остался вполне доволен.

Под катом я расскажу как установить и настроить WSL, на какие я наткнулся проблемы и ограничения, как запускать Linux приложения из Windows и наоборот, а так же как интегрировать элементы окружения Xfce в окружение рабочего стола Windows.


Никогда не думал, что однажды вернусь на Windows, но повод попробовать мне дали стечения обстоятельств: жена, далекая от IT, дергала почти каждый раз, когда у нее возникала необходимость воспользоваться компом; проснулась ностальгия по одной игре, но она никак не хотела адекватно работать под wine; а тут еще мне подарили коробочную Windows 10 Pro. WSL я поставил чуть ли не сразу после установки системы, поигрался несколько вечеров, понял, что продукт для моих задач годный, но хочется более привычный терминал и вообще некоторых удобств.

Установка WSL и дистрибутива

Сразу оговорюсь, в интернете можно найти описание установки с помощью выполнения команды lxrun /install в командной строке или консоли PowerShell. Данный способ больше не работает (после выхода WSL в стабильный релиз). Насколько мне известно, сейчас WSL можно установить только из Microsoft Store вместе с предпочитаемым дистрибутивом.

Так же отмечу, что когда установку производил я, на выбор были доступны дистрибутивы OpenSUSE, SUSE Linux Enterprise и Ubuntu 16.04 — последний я и установил. Сейчас также доступны Ubuntu 18.04, Debian 9 и Kali Linux, возможно появятся и другие дистрибутивы. Действия по установке могут отличаться. Так же, часть проблем описанных в статье может быть уже исправлена.

Находим в магазине желаемый дистрибутив и устанавливаем. Установка пройдет быстро, так как скачает только эмулятор ядра Linux и утилиту для запуска подсистемы, которая окажется в системной папке в трех экземплярах: wsl.exe, bash.exe и ubuntu.exe (вместо ubuntu будет имя Вашего дистрибутива). Все они равнозначны и делают одно и то же — запускают собственный эмулятор терминала, в нем linux'овый bash работающий под эмулятором ядра. При первом же запуске нас попросят придумать логин и пароль для пользователя по умолчанию, а после произойдет непосредственно установка дистрибутива. В качестве пользователя по умолчанию указываем root без пароля — это потребуется для дальнейших шагов. Безопасность не пострадает, кроме того при подготовке материалов к статье, в англоязычном туториале, я наткнулся на информацию, что новые версии WSL теперь делают пользователем по умолчанию root без пароля без лишних вопросов.

Дожидаемся установки. Далее первым делом стоит обновить зеркала apt на ближайшие. Для этого понадобится CLI текстовый редактор. В комплекте только vi, я же больше предпочитаю nano, поэтому ставлю его:

sudo вводить не требуется, так как мы уже под root'ом. Отредактируем файл /etc/apt/sources.list:

У меня лучше всего работают зеркала Яндекса, поэтому мой файл выглядит так:

Нажимаем Ctrl+O для сохранения и Ctrl+X для выхода. Теперь можно обновить систему до актуального состояния:

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

Далее переходим в папку юзера, зайдем под ним, установим пароль и отредактируем файл

Все, подсистема готова к использованию… почти.

Установка X-сервера, Xfce и прочих GUI'шных приложений

Первая же проблема, на которую я натолкнулся — bash-completion в предлагаемом эмуляторе терминала работал, мягко говоря, некорректно. Кроме того, данный эмулятор не умеет вкладки, а каждый его экземпляр запускает все в новом пространстве процессов, с отдельным init'ом (который кстати не заменить). Мне захотелось нормальный эмулятор терминала, некоторых других GUI приложений, а так же панельку, чтоб это все быстро запускать.

Когда я гуглил этот вопрос, я наткнулся на множество проблем, вроде необходимости перевода dbus на tcp протокол. На данный момент всех этих проблем нет. В подсистеме нормально работают unix-domain-socket'ы и все спокойно общается через них.

Первым делом нам понадобится X-сервер, притом установленный в основную систему (в Windows). Лично я использую для этих целей VcXsrv — порт X11 на Windows. Официальный сайт указанный в about самой утилиты его сейчас не предоставляет, поэтому гуглим установщик и устанавливаем все по умолчанию.

Пока идет установка возвращаемся в терминал WSL, командой exit выходим обратно в root'а. Первым делом настроим русские локали:

Далее установим некоторые компоненты Xfce. Можно конечно установить его целиком из мета-пакета, но большинство компонентов нам не понадобится, а модульная архитектура Xfce позволяет нам поставить только необходимое:

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

    config.xlaunch — файл настроек для VcXsrv

x-run.vbs — WSL всегда запускается со своим эмулятором терминала, если его закрыть — завершатся все его дочерние процессы. Чтоб данное окно не мозолило глаза, неплохо его запускать скрытым. К счастью в Windows встроен интерпретатор VBScript, который позволяет это сделать в одну строчку:

Поясню, что здесь происходит. Мы говорим VBscript выполнить приложение wsl с параметром cd /home/user1; DISPLAY=:0 LANG=ru_RU.UTF-8 su user1 -c xfce4-session , папка запуска нам не важна, поэтому пустая строка, действие open — запуск, 0 — скрытый режим. Самому wsl мы отдаем команду на выполнение: переход в папку пользователя, затем с установкой переменных окружения DISPLAY (дисплей X-сервера) и LANG (используемая локаль) мы запускаем xfce4-session от имени нашего пользователя user1 (благодаря команде su)

Далее можем запустить наш start.bat и настроить панель Xfce под себя. Замечу, что здесь я наткнулся на еще одну проблему — панель прекрасно отображается поверх всех окон, но вот выделить себе место, как панель на рабочем столе Windows она не может. Если кто знает решение данной проблемы, поделитесь в комментариях.

Ну и под конец данной части, скриншот моего рабочего стола:


Взаимодействие окружения Windows и окружения подсистемы Linux

Запускать Linux приложения напрямую из Windows можно через те же 3 команды — bash, wsl или ubuntu. Не забываем, что по умолчанию запуск идет от root, поэтому стоит понижать привилегии через su , так же нужно не забывать передавать переменную окружения DISPLAY=:0 если приложению требуется X-сервер. Так же нужно менять папку, из которой должно работать приложение, через cd внутри WSL. Пример, посчитаем md5 для file.txt на диске D средствами Linux'овой md5sum:

Доступ к файловой системе Linux так же имеется, лежит она в %localappdata%\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs . Читать таким образом файлы можно, а вот писать — не желательно, можно поломать файловую систему. Думаю проблема в том, что Windows не умеет работать с правами и владельцами файловой системы Linux.

Из Linux так же можно запускать Windows приложения. Просто запускаем exe-шник и он выполнится в основной системе.

Диски Windows монтируются в /mnt в соответствии со своими буквами в нижнем регистре. Например диск D будет смонтирован в /mnt/d . Из Linux можно свободно читать и писать файлы Windows. Можно делать на них симлинки. Права у таких файлов всегда будут 0777, а владельцем будет root.

Сетевой стек у подсистемы общий с Windows. Сервер поднятый в Linux будет доступен на localhost в Windows и наоборот. Однако unix-domain-socket для Windows будет просто пустым файлом, работать с этим можно только внутри Linux. Выход во внешнюю сеть у Linux так же есть, в том числе можно слушать порты, если этого не запрещает фаервол.
ifconfig в Linux и ipconfig в Windows выдают одинаковую информацию о сетевых интерфейсах.

Из диспетчера задач Windows можно спокойно прибить процесс внутри подсистемы Linux. Однако Linux увидит только свои процессы.

Особенности, ограничения и подводные камни

Ядро Linux в WSL не настоящее. Это всего лишь прослойка-эмулятор, которая часть Linux-специфичных задач выполняет сама, а часть проксирует напрямую в ядро winNT. Большая часть api в нем реализована, но не все. Свое ядро собрать не получится, как и не получится подключить модули ядра (.ko, Kernel Object).

Init процесс у WSL тоже свой и заменить его, например, на system.d не выйдет. У меня давно есть желание написать менеджер демонов на go, который бы работал с файлами юнитов system.d и предоставлял бы схожий интерфейс, да все руки не доходят.

Нет поддержки openFUSE, соответственно примонтировать виртуальную или удаленную файловую систему не получится. Так же нельзя сделать mount из файла, mount вообще ничего кроме bind здесь, похоже, не умеет.

Так же нет никакой возможности разбить файловую систему Linux на несколько разделов/дисков.

Прямой доступ к железу практически отсутствует. Все таки мы находимся в песочнице Windows, а не в полноценном Linux. /dev и /sys заметно пустуют, в них лишь проц да виртуальные устройства. Доступ к GPU — только через X-сервер, напрямую — никак, так что нейросети обучать придется в Windows.

В JS разработке столкнулся с тем, что electron.js отказался запускаться в WSL, пришлось дублировать окружение node.js в Windows.

Итоги

Статья получилась довольно длинной, надеюсь, что она окажется еще и полезной.
WSL для меня лично оказался инструментом вполне юзабельным, решающим мои задачи fullstack backend разработчика. Виртуалка с Linux за полгода так и не понадобилась. По общим ощущениям Windows+WSL намного функциональнее, чем Linux+Wine.

Пока писал статью, обнаружил, что в Microsoft Store появилась сборка WSL с Debian 9.3, данный дистрибутив мне более симпатичен, чем Ubuntu, поэтому буду пробовать ставить.

Читайте также: