В Windows 10 можно запускать графические Linux-приложения, но имейте в виду, что они официально не поддерживаются. Не все части программного обеспечения Linux работают, а графические приложения еще более сложны и менее тестируются. Но со временем они станут более стабильными, поскольку Microsoft улучшит базовую подсистему Windows для Linux.
Башня Bash от Windows 10 поддерживает только 64-разрядные двоичные файлы, поэтому вы не можете установить и запустить 32-разрядное программное обеспечение Linux.
Как это работает
Во-первых, давайте разберемся, как это работает, чтобы вы могли понять, что мы здесь делаем.
Windows 10 включает базовую «подсистему Windows для Linux», которая позволяет Windows 10 запускать программное обеспечение Linux, переведя системные вызовы Linux на системные вызовы Windows.
Когда вы запускаете дистрибутив Linux, такой как Ubuntu, он загружает и устанавливает полное изображение пользовательского пространства Ubuntu на вашем компьютере. Сюда входят те же самые двоичные файлы или приложения, которые будут работать на Ubuntu. Эта среда «Bash on Ubuntu on Windows» работает благодаря базовой подсистеме Windows для Linux.
Microsoft не хочет тратить время на графическое программное обеспечение, так как эта функция предназначена для инструментов командной строки. Но основная техническая причина, по которой графические приложения не поддерживаются, заключается в том, что им нужен «сервер X» для предоставления этого графического интерфейса. На типичном рабочем столе Linux этот «X-сервер» автоматически появляется при загрузке вашего компьютера, и он отображает весь рабочий стол и приложения, которые вы используете.
Однако попробуйте открыть графическое приложение от Bash в Windows, и оно будет жаловаться, что оно не может открыть дисплей.
Если вы установите приложение X-сервера на рабочий стол Windows и измените параметр в оболочке Bash, приложения отправят свой графический вывод в приложение X-сервера, и они появятся на вашем рабочем столе Windows. Все должно работать нормально, предполагая, что эти приложения не зависят от системных вызовов Linux, которые подсистема Windows для Linux еще не поддерживает.
Шаг первый: установите X-сервер
В Windows можно установить несколько разных X-серверов, но мы рекомендуем Xming. Загрузите его и установите на свой ПК с Windows 10.
Процесс установки прост: вы можете просто принять настройки по умолчанию. Затем он автоматически запускается и запускается в вашем системном трее, ожидая запуска графических программ.
Шаг второй: установите программу
Вы можете установить графические настольные программы Linux, как и любую другую программу, используя команду apt-get в среде Bash на основе Ubuntu. Например, допустим, вы захотите установить графический редактор vim на базе GTK. Выполните следующую команду в окне Bash:
sudo apt-get install vim-gtk
Шаг третий: установите переменную среды отображения
Теперь вам нужно установить переменную среды DISPLAY, чтобы указать на X-сервер, запущенный на вашем ПК с Windows 10. Если вы этого не сделаете, графические приложения просто не запустится.
Для этого выполните следующую команду в среде Bash:
export DISPLAY=:0
Этот параметр применяется только к вашей текущей сессии Bash. Если вы закроете окно, Баш забудет его. Вам придется запускать эту команду каждый раз, когда вы снова открываете Bash и хотите запустить графическое приложение.
Шаг четвертый: запуск приложения
Теперь вы можете просто запустить графическое приложение, введя имя его исполняемого файла, например, вы наберете любую другую команду. Например, чтобы запустить vim-gtk, вы должны запустить:
gvim
Это так просто. Если после сбоя приложение аварийно завершает работу, система Linux, требующая его, может не поддерживаться подсистемой Windows для Linux. Не так много можно сделать по этому поводу. Но дайте ему шанс, и вы обнаружите, что приложения, в которых вы нуждаетесь, работают прилично!
DISPLAY=:0 command
Например, чтобы запустить gvim, вы должны запустить:
DISPLAY=:0 gvim
Помните, что это официально не поддерживается, поэтому вы можете столкнуться с ошибками в более сложных приложениях. Виртуальная машина является более надежным решением для запуска множества графических настольных приложений Linux в Windows 10, но это удобное решение для некоторых более простых вещей.