7Sep
Powłoka Bash systemu Windows 10 oficjalnie nie obsługuje graficznych aplikacji dla systemu Linux. Microsoft twierdzi, że ta funkcja jest przeznaczona tylko dla programistów, którzy chcą uruchamiać narzędzia terminali linuksowych. Ale podstawowa "Podsystem Windows dla systemu Linux" jest silniejsza niż pozwala Microsoft.
Możliwe jest uruchamianie graficznych aplikacji systemu Linux w systemie Windows 10, ale należy pamiętać, że nie jest on oficjalnie obsługiwany. Nie wszystkie elementy oprogramowania linuksowego działają, a aplikacje graficzne są jeszcze bardziej złożone i mniej testowane. Z czasem jednak powinny one stać się bardziej stabilne, ponieważ Microsoft ulepsza podstawowy podsystem systemu Windows dla systemu Linux.
Powłoka Bash systemu Windows 10 obsługuje tylko 64-bitowe pliki binarne, więc nie można zainstalować i uruchomić 32-bitowego oprogramowania dla systemu Linux.
Jak to działa
Najpierw spróbujmy dokładnie jak to działa, więc możesz zrozumieć czymrobimy tutaj.
Windows 10 zawiera bazowy "Podsystem Windows dla systemu Linux", który pozwala systemowi Windows 10 na uruchamianie oprogramowania Linux, tłumacząc wywołania systemowe systemu Linux na wywołania systemowe systemu Windows.
Po uruchomieniu programu bash.exe pobierze i zainstaluje kompletny obraz przestrzeni użytkownika systemu Ubuntu na komputerze. Obejmuje to dokładnie te same pliki binarne - lub aplikacje - które działają w systemie Ubuntu. To środowisko "Bash w systemie Ubuntu w systemie Windows" działa dzięki systemowi Windows Subsystem dla systemu Linux.
Microsoft nie chce poświęcać czasu na pracę z oprogramowaniem graficznym, ponieważ ta funkcja jest przeznaczona dla narzędzi dla programistów uruchamianych z wiersza poleceń.Ale głównym powodem technicznym, że aplikacje graficzne nie są obsługiwane, jest to, że wymagają "serwera X", aby zapewnić interfejs graficzny. Na typowym pulpicie systemu Linux ten "serwer X" pojawia się automatycznie po uruchomieniu komputera i renderuje cały pulpit i używane aplikacje.
Ale spróbuj otworzyć aplikację graficzną z Bash w systemie Windows, a ona będzie narzekać, że nie może otworzyć wyświetlacza.
Istnieją aplikacje X serwera, które można zainstalować na pulpicie systemu Windows. Zwykle są one używane do renderowania aplikacji Linux działających na innych komputerach - protokół "X11" jest raczej stary i został zaprojektowany z możliwością uruchamiania przez połączenie sieciowe.
Jeśli zainstalujesz aplikację serwera X na pulpicie systemu Windows i zmienisz ustawienie w powłoce Bash, aplikacje wyślą swoje graficzne dane wyjściowe do aplikacji serwera X, a pojawią się one na pulpicie systemu Windows. Wszystko powinno działać dobrze, zakładając, że te aplikacje nie zależą od wywołań systemu Linux, których podsystem Windows dla systemu Linux jeszcze nie obsługuje.
Krok pierwszy: Zainstaluj serwer X
Istnieje kilka różnych serwerów X, które można zainstalować w systemie Windows, ale zalecamy Xming. Pobierz go i zainstaluj na swoim komputerze z systemem Windows 10.
Proces instalacji jest prosty: Możesz po prostu zaakceptować ustawienia domyślne. Następnie automatycznie uruchomi się i uruchomi w zasobniku systemowym, czekając na uruchomienie programów graficznych.
Krok drugi: Zainstaluj program
Możesz zainstalować graficzne programy Linux na komputerach stacjonarnych, tak jak każdy inny program, używając polecenia apt-get w środowisku Bash opartym na systemie Ubuntu. Na przykład załóżmy, że chcesz zainstalować graficzny edytor vim oparty na GTK.W oknie Bash uruchomisz następujące polecenie:
sudo apt-get install vim-gtkPrzejdzie przez proces instalacji w oknie wiersza poleceń, tak jak w systemie Ubuntu.
Krok trzeci: ustaw zmienną środowiska wyświetlania
Teraz musisz ustawić zmienną środowiskową "DISPLAY", aby wskazywała serwer X działający na komputerze z systemem Windows 10.Jeśli tego nie zrobisz, aplikacje graficzne po prostu się nie uruchomią.
Aby to zrobić, uruchom następujące polecenie w środowisku Bash:
export DISPLAY =: 0To ustawienie dotyczy tylko bieżącej sesji Bash. Jeśli zamkniesz okno, Bash go zapomni. Będziesz musiał uruchomić to polecenie za każdym razem, gdy ponownie otworzysz Bash i chcesz uruchomić graficzną aplikację.
Krok czwarty: Uruchom aplikację
Możesz teraz uruchomić aplikację graficzną, wpisując nazwę jej pliku wykonywalnego, tak jakbyś wpisał dowolne inne polecenie. Na przykład, aby uruchomić vim-gtk, uruchomisz:
gvimTo takie proste. Jeśli aplikacja ulegnie awarii po uruchomieniu, system Linux wywołań, której wymaga, może nie być obsługiwany przez podsystem systemu Windows dla systemu Linux. Niewiele można z tym zrobić.Ale daj mu szansę, a może się okazać, że aplikacje, których potrzebujesz, działają całkiem nieźle!
Możesz również połączyć trzeci i czwarty krok, jeśli chcesz. Zamiast eksportować zmienną DISPLAY tylko raz dla całej sesji powłoki Bash, wystarczy uruchomić aplikację graficzną za pomocą następującego polecenia:
DISPLAY =: 0 commandNa przykład, aby uruchomić gvim, uruchom:
DISPLAY =:0 gvimPamiętaj, że nie jest to oficjalnie obsługiwane, więc możesz napotkać błędy w bardziej złożonych aplikacjach. Maszyna wirtualna jest bardziej niezawodnym rozwiązaniem do uruchamiania wielu graficznych aplikacji dla systemu Linux na Windows 10, ale jest to zgrabne rozwiązanie dla niektórych prostszych rzeczy.