Как да стартирате графични приложения за Linux от Windows 10 на Bash Shell
Черупката на Bash на Windows 10 официално не поддържа графични приложения за десктоп Linux. Microsoft твърди, че тази функция е предназначена само за разработчици, които искат да използват Linux терминални помощни програми. Но основната “подсистема на Windows за Linux” е по-мощна от Microsoft.
Възможно е да се стартират графични Linux приложения в Windows 10, но имайте предвид, че той не се поддържа официално. Не всяка част от софтуера на Linux работи, а графичните приложения са още по-сложни и по-малко тествани. Но те трябва да станат по-стабилни във времето, тъй като Microsoft подобрява подсистемата Windows под Linux за Linux.
Windows 10 Bash shell поддържа само 64-битови двоични файлове, така че не можете да инсталирате и стартирате 32-битов Linux софтуер.
Как става това
Първо, нека се спрем точно как работи това, за да можете да разберете какво правим тук.
Windows 10 включва подсистема „Windows Subsystem for Linux“, която позволява на Windows 10 да изпълнява Linux софтуер чрез превод на системните обаждания на Linux към системните обаждания на Windows.
Когато стартирате Linux дистрибуция като Ubuntu, тя изтегля и инсталира цялостно потребителско пространство на Ubuntu на вашия компютър. Това включва точно същите двоични файлове или приложения, които ще се изпълняват на Ubuntu. Тази "Bash on Ubuntu на Windows" среда работи благодарение на подсистемата Windows подсистема за Linux.
Microsoft не иска да прекарва времето си в работа с графичен софтуер, тъй като тази функция е предназначена за инструменти за програмисти от командния ред. Но основната техническа причина, поради която не се поддържат графични приложения, е, че те изискват "X сървър", за да осигурят този графичен интерфейс. На типичен работен плот на Linux този X сървър се появява автоматично, когато стартирате компютъра си и визуализира целия работен плот и приложенията, които използвате.
Но опитайте да отворите графично приложение от Bash на Windows и то ще се оплаче, че не може да отвори дисплей.
Има обаче X сървърни приложения, които можете да инсталирате на работния плот на Windows. Обикновено те се използват за рендиране на приложения на Linux, работещи на други компютри - протоколът „X11“ е по-скоро стар и е проектиран с възможност да се изпълнява по мрежова връзка.
Ако инсталирате X сървърно приложение на работния плот на Windows и промените настройка в черупката на Bash, приложенията ще изпратят графичния си изход към приложението X сървър и ще се покажат на работния плот на Windows. Всичко трябва да работи добре, ако приемем, че тези приложения не зависят от системните обаждания на Linux, които подсистемата на Windows за Linux все още не поддържа.
Първа стъпка: Инсталирайте X сървър
Има няколко различни X сървъра, които можете да инсталирате на Windows, но ние препоръчваме Xming. Изтеглете го и го инсталирайте на вашия Windows 10 PC.
Процесът на инсталиране е прост: можете просто да приемете настройките по подразбиране. След това той автоматично ще се стартира и стартира в системната лента, като чака да стартирате графични програми.
Стъпка втора: Инсталирайте програмата
Можете да инсталирате графични Linux десктоп програми като всяка друга програма, като използвате командата apt-get в средата, базирана на Ubuntu. Например, да кажем, че искате да инсталирате графичния, базиран на GTK редактор на vim. Ще изпълните следната команда в прозореца Bash:
sudo apt-get install vim-gtk
Той ще премине през инсталационния процес в прозореца на командния ред, точно както го прави в Ubuntu.
Трета стъпка: Задаване на променлива на дисплейната среда
Сега ще трябва да настроите променливата на обкръжението "DISPLAY" да сочи X сървъра, работещ на вашия компютър с Windows 10. Ако не направите това, графичните приложения просто няма да могат да се стартират.
За да направите това, изпълнете следната команда в средата Bash:
export DISPLAY =: 0
Тази настройка се прилага само за текущата Ви сесия Bash. Ако затворите прозореца, Баш ще го забрави. Ще трябва да изпълните тази команда всеки път, когато отворите Bash и искате да стартирате графично приложение.
Четвърта стъпка: Стартирайте приложение
Сега можете просто да стартирате графично приложение, като напишете името на изпълнимия му файл, както бихте написали всяка друга команда. Например, за да стартирате vim-gtk, бихте изпълнили:
Gvim
Толкова е просто. Ако приложението се срине след стартирането, системните обаждания на Linux, които тя изисква, може да не се поддържат от подсистемата Windows за Linux. Не можете да направите много за това. Но дайте му възможност и може да откриете, че приложенията, от които се нуждаете, трябва да работят добре!
Можете също така да комбинирате третата и четвъртата стъпка, ако желаете. Вместо да експортирате променливата DISPLAY веднъж за цяла сесия на Bash shell, трябва само да стартирате графично приложение със следната команда:
DISPLAY =: 0 команда
Например, за да стартирате gvim, бихте изпълнили:
DISPLAY =: 0 gvim
Не забравяйте, че това не се поддържа официално, така че можете да срещнете грешки с по-сложни приложения. Виртуалната машина е по-надеждно решение за стартиране на много графични Linux десктоп приложения на Windows 10, но това е чисто решение за някои от по-простите неща.