как установить терминал linux на windows 10
Как установить и запустить Ubuntu WSL под Windows 10
У пользователей Windows 10 есть необычная возможность установить операционную систему Ubuntu на свой компьютер. Механизм, обеспечивающий такую возможность, называется WSL — Windows Subsystem for Linux. Далее я расскажу, как с помощью WSL установить полноценную Ubuntu на Win 10 штатными средствами системы.
Что такое Ubuntu WSL
Для начала кратко поясню, что такое WSL на практике. Это некий слой абстракции, который позволяет запускать linux приложения в среде windows. И это не виртуальная машина. И Linux, и Windows приложения работают в рамках одной операционной системы с совместным доступом к данным на дисках. Вы прозрачно можете запустить приложение на ubuntu и открыть им файл в директории windows.
Для примера, расскажу, где ubuntu под wsl версии 1 хранит свои файлы — C:\Users\user1\AppData\Local\lxss.
Тут и корень системы, и директории пользователей. Посмотреть содержимое можно из-под windows. Только не рекомендуется их редактировать. Работа linux системы может быть нарушена. На примере доступа к файлам видно, что это не виртуальная машина. Важно понимать это отличие.
А вот то же самое можно сделать из-под ubuntu, открыв файлы из директории windows.
С помощью данной технологии, вы условно сможете запустить полноценный Ubuntu Server на своем компьютере. Читайте мой обзор на Ubuntu, чтобы иметь представление о том, чем он отличается от остальных linux дистрибутивов.
Зачем нужна Ubuntu WSL на Windows
Поговорим немного о том, зачем может понадобиться установка Ubuntu WSL в Windows 10. Можно в небольшой список это вынести и перечислить по пунктам:
Это то, что первое приходит в голову. Думаю, есть и другие причины, для чего может быть полезно установить ubuntu wsl. Делитесь своим мнением в комментариях. Может я что-то важное упускаю.
Установка Ubuntu WSL под Win 10
Установка подсистемы Windows для Linux в Windows 10 неплохо описана в официальном руководстве от Microsoft. Чтобы установить Ubuntu WSL на Windows, надо для начала включить компонент системы Windows под названием Windows-Subsystem-Linux. Для этого запускаем cmd с правами администратора (это важно!) и переходим в powershell. Там выполняем:
После этого активируем компонент Платформа виртуальных машин.
Далее обязательно перезагрузить систему, иначе дальше будут ошибки. После перезагрузки продолжаем ставить ubuntu под wsl.
Cкачиваем и устанавливаем Пакет обновления ядра Linux в WSL 2 для 64-разрядных компьютеров — https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
Дальше устанавливаем версию WSL 2 по умолчанию. Она более продвинутая и быстрая, по сравнению с первой.
Теперь идем в Windows Store и ищем там необходимую вам версию Ubuntu WSL. Я просто в строку поиска ввел название дистрибутива и получил все доступные версии.
После установки в меню Пуск можно запустить Ubuntu WSL. При первом запуске вам предложат задать имя пользователя для Linux системы.
Вот и все. Заходим в свежеустановленную Ubuntu 20 LTS на Win 10.
У вас под рукой практически полноценная linux система, работающая нативно под windows.
Настройка Ubuntu WSL
Выполним первоначальную настройку Ubuntu WSL, чтобы с ней удобнее было далее работать. Начнем с подключения по SSH.
Настройка ssh
Терминал Windows не очень удобен и привычен. Так что если вы привыкли подключаться по ssh через какой-нибудь другой менеджер подключений, вам нужно будет на wsl системе настроить ssh. Это не совсем очевидная процедура. Чтобы заставить нормально работать openssh server, его надо переустановить. Делаем это:
Теперь сразу разрешим подключаться с использованием паролей. Для этого открываем конфиг /etc/ssh/sshd_config и разкомментируем настройку:
После этого перезапустите службу sshd
Мы закончили настройку ssh в ubuntu. Теперь к ней можно подключиться, например, через putty. Используем адрес 127.0.0.1 и порт 22.
Вот и все. Можете использовать любой другой ssh клиент.
Обновление
Для того, чтобы обновить Ubuntu WSL на Windows 10 достаточно внутри linux системы запустить стандатрное средство обновления пакетов — apt.
В общем случае этого достаточно для обновления системы. Если же вы хотите выполнить обновление до следующего релиза, то лучше это сделать через Windows Store, установив нужную версию ubuntu.
Установка MC
Для того, чтобы установить популярный в linux среде файловый менеджер Midhight Commander или коротко MC, необходимо опять же воспользоваться пакетным менеджером apt.
При этом вы сможете без проблем перемещаться не только внутри ubuntu, но и открывать файлы windows. Традиционные диски C:, D: и т.д. смонтированы в /mnt.
Войти под root
Для того, чтобы в Ubuntu WSL зайти под ученой записью root, необходимо под пользователем выполнить в консоли:
Теперь вы полноценный root пользователь и можете запускать команды с повышенными привилегиями без sudo.
Автозапуск служб
В Ubuntu WSL не работает systemd и возникает закономерный вопрос, а как же тогда настроить автозапуск нужных служб. Тут есть два принципиально разных подхода по автозапуску служб:
Для первого случая проще всего воспользоваться готовым скриптом wsl-autostart — https://github.com/troytse/wsl-autostart. С его помощью вы можете выбрать любые программы из ubuntu, которые захотите запустить при старте компьютера.
Если вы хотите выполнить какую-то команду при первом входе в wsl, то просто добавьте ее в файл .bashrc домашнего каталога пользователя. Например, добавим туда вывод фразы Hello World! Для этого добавляем в самый конец:
Теперь при запуске терминала wsl, вы увидите свое сообщение.
Вместо команды echo можете написать любую другую. Например, запуск MC:
Теперь при запуске терминала ubuntu wsl у вас автоматически будет запускаться файловый менеджер MC.
Обновление WSL до WSL2
Во время установки любой WSL системы у вас есть возможность выбора ее версии. Вторая версия более современная и быстрая, так что в общем случае рекомендуется использовать ее. Но возможно вам по какой-то причине понадобится первая. Например, в WSL 1 файловая система linux в открытом виде в виде файлов в директории C:\Users\user1\AppData\Local\lxss, а во второй версии в виде единого виртуального диска. Разница принципиальна.
Для того, чтобы обновить WSL1 до WSL2 необходимо через powershell активировать компонент VirtualMachinePlatform:
Указать версию WLS2 как дефолтную:
В завершении проапгрейдить установленный дистрибутив до WSL2 или поставить новый.
Версии WSL можно переключать в любое время. Узнать distribution name можно с помощью команды:
Reboot Ubuntu WSL
Работа в Windows 10 с Ubuntu несколько необычна, поэтому сходу не понятные даже такие простые вещи, как перезагрузка linux системы. Как сделать reboot в Ubuntu WSL? Для того, чтобы перезагрузить систему, достаточно выполнить в консоли powershell команду:
Все экземпляры wsl будут завершены. После запуска терминала ubuntu wsl она запустится заново, что будет равнозначно обычной перезагрузки системы.
Если вы используете первую версию WSL, то перезапуск linux систем выполняется перезапуском службы, которая их обслуживает. Выполняется так же в консоли windows^
Как удалить Ubuntu WSL
Если вам нужно удалить Ubuntu WSL из Windows 10, то сделать это можно точно так же, как любое другое приложение, установленное из Магазина. Выбираете Ubuntu WSL через пуск и нажимаете Удалить.
То же самое можно сделать и через консоль powershell
Список установленных систем смотрим командой:
Ничего сложного, система удаляется фактически в одну команду. Для повторной установки достаточно еще раз установить ubuntu через Магазин.
Как выполнять Linux-команды внутри Windows: официальный и сторонние способы
Под GNU/Linux-дистрибутивы создано огромное количество полезных и удобных инструментов и приложений для обычных пользователей и разработчиков. Далеко не всё из этого доступно на Windows, но, к счастью, для ОС от Microsoft есть решения, исправляющие эту проблему.
Содержание
WSL — официальная подсистема Linux внутри Windows
В Windows 10 существует крайне полезная вещь под названием Windows Subsystem for Linux (WSL). Она позволяет использовать GNU/Linux-среду прямо в Windows и запускать не только команды, но и, например, Bash-скрипты. Для использования WSL необходимо следовать инструкции ниже.
Шаг 1. Проверьте, подходит ли текущая версия Windows требованиям. Для этого нажмите сочетание клавиш Win+R, затем введите winver. Найдите строку «Сборка ОС» — она должна быть свежее версии 14316.
Шаг 2. Запустите стандартную утилиту PowerShell от имени администратора и введите в ней команду для включения WSL:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Шаг 3. Если версия Windows, определённая в первом пункте, свежее 18362, вы можете установить WSL 2, который в разы быстрее первой версии и обладает доработанным ядром. Введите команду ниже, если нужно установить WSL 2:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
После этого скачайте и установите пакет обновления с официального сайта.
Шаг 4. Перезагрузите компьютер. Если была произведена установка WSL 2, введите в PowerShell от имени администратора следующую команду:
Шаг 5. После перезагрузки откройте фирменный магазин приложений Microsoft Store и найдите подходящий GNU/Linux-дистрибутив. Самым популярным является Ubuntu — вы можете установить любую версию из представленных в Microsoft Store.
Шаг 6. Как только установка завершится, найдите дистрибутив в меню «Пуск» и запустите его.
Шаг 7. Пройдите этап первоначальной настройки, введя имя нового пользователя и придумав пароль.
Обращу внимание на то, что путь к дискам в WSL отличается от такового в Windows. Вместо привычного C:/ используйте /mnt/c/. Также не забывайте про экранирование пробелов с помощью символа \ — это также пригодится при вводе путей к файлам.
Помимо выполнения базовых команд, с помощью WSL можно даже запускать приложения с графическим интерфейсом. Правда, рассчитывать на большое количество поддерживаемых подобных программ не стоит.
Шаг 1. Загрузите X-сервер и установите его.
Шаг 2. Запустите его с помощью ярлыка на рабочем столе. В открывшемся окне выберите вариант Multiple windows, затем Start no client. Завершите настройку кнопкой Finish.
Шаг 3. Откройте дистрибутив через меню Пуск и выполните команду export DISPLAY=:0
Шаг 4. Запустив приложение с графическим интерфейсом в WSL, вы увидите новое окно прямо в Windows.
CoreUtils — лёгкий инструмент для запуска базовых команд
Плюс данной утилиты — возможность запуска не только на Windows 10, но и на более старых версиях ОС. Кроме того, она легка и не занимает много места. Не обошлось без недостатков — программа скудна на функционал и не обновлялась очень давно. Она не только не умеет запускать скрипты и приложения с GUI, но и поддерживает лишь самые базовые GNU/Linux-команды. Установка CoreUtils весьма проста.
Шаг 1. Скачайте утилиту с официального сайта.
Шаг 2. Следуйте инструкциям установщика.
Шаг 3. Откройте «Панель управления», в разделе «Система и безопасность» выберите пункт «Система». На панели слева откройте «Дополнительные параметры системы». Нажмите кнопку «Переменные среды» и в открывшемся окне найдите область с заголовком «Системные переменные». В случае, когда там есть переменная Path, выберите её, нажмите «Изменить» и далее создайте новую строку. Содержимым этой строки должен быть путь к папке, который был указан при установке. Если вы ничего не меняли, то введите следующее:
Переменной Path нет? Тогда для начала создайте её кнопкой «Создать», затем в поле имени введите Path, а в поле значения — строку выше.
Шаг 4. Запустите командную строку и выполняйте команды прямо там.
Cygwin — запуск команд и Bash-скриптов
Ещё одна утилита, схожая с CoreUtils, но обладающая более широким функционалом — в том числе и возможностью запуска скриптов. Из минусов — немалый вес и более сложная установка. Разумеется, не идёт ни в какое сравнение с максимально удобным WSL, но для базовых команд вполне подойдёт.
Шаг 1. Загрузите Cygwin и запустите установку.
Шаг 2. Выберите Install from Internet, укажите директории для установки и загрузки пакетов, а также любой подходящий сайт из списка для скачивания файлов.
Шаг 3. В процессе установки можете выбрать необходимые пакеты, либо сразу нажать «Далее», оставив базовый набор.
Шаг 4. Откройте «Панель управления», в разделе «Система и безопасность» выберите пункт «Система». На панели слева откройте «Дополнительные параметры системы». Нажмите кнопку «Переменные среды» и в открывшемся окне найдите область с заголовком «Системные переменные». В случае, когда там есть переменная Path, выберите её, нажмите «Изменить» и далее создайте новую строку. Содержимым этой строки должен быть путь к папке, который был указан при установке. Если вы ничего не меняли, то введите следующее:
Переменной Path нет? Тогда для начала создайте её кнопкой «Создать», затем в поле имени введите Path, а в поле значения — строку выше.
Шаг 5. Команды можно выполнять как через командную строку, так и через специальный терминал.
Шаг 6. Для удаления Cygwin достаточно удалить папку, в которую программа была установлена, а также (по желанию) значение из переменной Path по методу, обратному тому, что был описан в 4 шаге (не удаляйте саму переменную).
Как установить приложения Linux с графическим интерфейсом в Windows 10 с помощью WSL
Поскольку сейчас в Linux разрабатывается больше приложений, чем когда-либо прежде, компания Microsoft осознала, что ей необходимо предоставить разработчикам простой способ создания, тестирования и запуска приложений Linux, не покидая рабочего стола Windows. Подсистема Windows для Linux (WSL) изначально была разработана для предоставления интегрированной терминальной среды Linux в Windows без необходимости настройки и управления виртуальной машины. Но что, если вы хотите запустить редактор графического интерфейса Linux или другое приложение с графическим интерфейсом, используя WSL?
Microsoft объявила 21 апреля что WSL, начиная с Windows 10 Insider Preview Build 21364, теперь поддерживает запуск графических приложений Linux. Таким образом, используя сборку 21364 и выше, разработчики могут запускать свои предпочтительные редакторы графического интерфейса и инструменты для тестирования и создания приложений Linux без необходимости в установке дополнительных программ и установки X-сервера. В этой статье мы опишем, как обновить WSL для поддержки приложений с графическим интерфейсом, как установить приложение с графическим интерфейсом в Ubuntu и, наконец, посмотреть, как приложения Linux с графическим интерфейсом интегрируются с пользовательским интерфейсом Windows 10.
Windows 10, версия 21H2 и поддержка графического интерфейса Linux приложений
Windows 10, версия 21H2 появится не раньше второй половины 2021 года, но Microsoft занята разработкой предварительных версий для инсайдеров. До недавнего времени WSL официально поддерживал только терминальные приложения Linux. Но компания Microsoft недавно выполнила обещание, данное в прошлом году, по обеспечению поддержки приложений с графическим интерфейсом для подсистемы Windows для Linux (WSL). Если вы не знаете, WSL 2 – это функция в Windows 10, которая позволяет разработчикам добавлять ядро Linux в Windows, а затем загружать поддержку терминала для нескольких дистрибутивов Linux, включая Ubuntu и SUSE.
Для чего нужна поддержка графического интерфейса Linux приложений в WSL?
Основным вариантом использования поддержки приложений Linux с графическим интерфейсом является запуск IDE (интегрированная среда разработки), которые поддерживаются только в Linux. Хотя многие разработчики используют Visual Studio Code в Windows для подключения к своим экземплярам Linux в WSL, некоторые разработчики предпочитают использовать такие инструменты Linux, как gedit, JetBrains и gvim.
Есть и другие приложения, которые работают только в Linux. WSL теперь позволяет разработчикам запускать эти приложения без необходимости в виртуальной машине Linux. Поддержка нового приложения с графическим интерфейсом пользователя в WSL, иногда называемого WSLg, также позволяет разработчикам тестировать кроссплатформенные приложения с графическим интерфейсом. Присутствует даже поддержка звука и микрофона.
Для ресурсоемких графических приложений WSLg поддерживает 3D-ускорение через OpenGL. Аппаратное ускорение GPU может принести пользу разработчикам, запускающим сложные приложения, использующие преимущества виртуального GPU WSL. Microsoft заявляет, что если вы хотите поэкспериментировать с 3D-ускоренной графикой в WSL, вам необходимо вручную загрузить драйвер WDDMv3.0 для графических процессоров AMD, Intel и NVIDIA соответственно. В конечном итоге эти драйвера будут автоматически развернуты с помощью Центра обновления Windows.
Как обеспечивается поддержка графических приложений в WSL?
Когда вы запускаете приложение Linux с графическим интерфейсом, Windows автоматически запускает сопутствующий дистрибутив Linux, который включает XWayland, звуковой сервер PulseAudio и всё необходимое для работы приложений с графическим интерфейсом Linux в Windows. Linux приложения с графическим интерфейсом интегрированы с пользовательским интерфейсом Windows, и когда вы завершаете приложение, сеанс сопутствующего дистрибутива Linux также завершается, чтобы уменьшить использование системных ресурсов.
WSLg поддерживает графические приложения в Wayland и X11. Microsoft разработала WSLg как приложение с открытым исходным кодом. WSLg изолирован от пользовательского дистрибутива Linux, поэтому WSLg можно использовать независимо. Дистрибутив-компаньон WSLg использует CBL-Mariner, легкий и настраиваемый дистрибутив Linux, поддерживаемый Microsoft Linux System Group. CBL-Mariner изначально был разработан для автономных контейнерных рабочих нагрузок, выполняемых в Azure и других сервисах Microsoft.
Как обновить WSL для поддержки приложений Linux с графическим интерфейсом
Если у вас уже установлен WSL в Windows и вы используете инсайдерскую сборку Windows 10 не ниже версии 21364 Insider Preview, то вам необходимо так же обновить существующую установку WSL для поддержки WSLg.
Обновление установленного WSL
Есть два простых шага для обновления WSL. Сначала выключите все запущенные дистрибутивы, а затем обновите WSL с помощью инструмента командной строки wsl.exe.
Затем перезапустите WSL, чтобы завершить процесс:
Установка WSL с поддержкой приложений Linux с графическим интерфейсом
Если вы хотите установить WSL в первый раз в Windows 10 Build 21364 или выше, вам просто нужно установить WSL с помощью командной строки. Поддержка WSLg встроена. Приведенная ниже команда устанавливает WSL, а затем устанавливает дистрибутив Ubuntu. Вам будет предложено перезагрузить компьютер.
Для установки WSL с поддержкой графического интерфейса Linux приложений выполните следующую команду в командной строке (cmd.exe) от имени Администратора:
После перезагрузки системы вас встретит открытое окно командной строки WSL, в котором нужно будет создать имя пользователя и задать пароль root.
Установка Linux приложений с графическим интерфейсом в Ubuntu WSL
Теперь запустите свой дистрибутив Linux из меню «Пуск» Windows. В этом примере я использую Ubuntu, поэтому я найду значок Ubuntu в списке приложений в меню «Пуск». Щелчок по значку Ubuntu запускает окно терминала Ubuntu. Теперь установите приложения Linux с графическим интерфейсом так же, как и в любом другом дистрибутиве Ubuntu.
Например, поскольку Ubuntu основан на Debian, используйте команду apt для установки приложений. Вам нужно будет выполнить команду sudo, чтобы запустить ее с повышенными привилегиями в Linux. Первый шаг – обновить все существующие пакеты в Ubuntu:
Здесь я использую apt для установки Nautilus, файлового менеджера с графическим интерфейсом для Linux:
Другой пример – установка предварительной версии Microsoft Edge для Linux. Здесь мне нужно загрузить пакет с веб-сайта Microsoft, а затем установить его с помощью apt.
Запуск приложений Linux с графическим интерфейсом и интеграция с пользовательским интерфейсом Windows 10
После того, как выбранные вами приложения будут установлены, вы найдете их в списке приложений в меню «Пуск» Windows. Запускайте приложения с графическим интерфейсом для Linux, как любое приложение для Windows.
Кроме того, вы можете запускать приложения с графическим интерфейсом из окна терминала Linux. Например, чтобы запустить Nautilus из терминала, я бы просто набрал nautilus и нажал ENTER. Или microsoft-edge и нажмите ENTER, чтобы запустить Microsoft Edge.
Браузер Edge даже идентифицируется как отличная от версии, установленной в Windows, по пингвину в правом нижнем углу значка приложения.
Приложения Linux с графическим интерфейсом в Windows 10
WSLg все еще находится в стадии разработки, но, похоже, на этом этапе они далеко продвинулись. Microsoft будет настраивать его в следующих сборках Insider до того, как Windows 10 21H2 выйдет позже в 2021 году. За время тестирования, WSLg, похоже, работал так, как ожидалось. Я не устанавливал графические драйверы виртуального графического процессора, как рекомендовали Microsoft. Но и без них вроде все нормально работало.
Если вам не терпится получить официальную поддержку графических приложений Linux GUI в WSL, вы можете переключиться на канал предварительной оценки. Имейте ввиду, эти обновления для WSL в настоящее время доступны только инсайдерам на канале Dev, который считается наиболее нестабильным. Итак, вы можете подождать либо до официального релиза 21H2, либо, по крайней мере, до тех пор, пока WSLg не перейдет на бета-версию или канал Release Preview.