Maciej Olanicki
Maciej OlanickiRedakcja Bulldogjob

Windows Subsystem for Linux w końcu w General Availability

WSL to jeden z najciekawszych modułów Windowsa ostatnich lat. Tym bardziej cieszy, że Microsoft zdecydował o jego ogólnej dostępności.
23.11.20223 min
Windows Subsystem for Linux w końcu w General Availability

Oto jest. Windows Subsystem for Linux osiągnął z decyzji Microsoftu status General Availability i ma status produkcyjny. To dobra okazja do tego, by zastanowić się, czym jest i czym może stać się WSL. Bowiem biorąc pod uwagę, jego dotychczasową historię nie jest to takie oczywiste.

WSL 1 i WSL 2

Pierwsze wersje testowe Windows Subsysytem for Linux znacząco różnią się od tego, co dziś jest dostępne w Windowsie, mimo że Microsoft niechętnie to zaznacza. Marginalizuje się nawet wykorzystywane jeszcze kilkanaście miesięcy temu ścisłe rozróżnienie na WSL 1 i WSL 2, które przecież funkcjonowały równolegle i to użytkownicy, czy ściślej – developerzy, decydowali o tym z której wersji korzystają. Na szczęście w tej kwestii wraz z osiągnięciem GA nic się nie zmieniło.

WSL 1 był rasowym subsystemem, środowiskiem uruchomieniowym dla linuksowych aplikacji z załadowanym zestawem bibliotek. Dzięki temu udało się osiągnąć imponujące wyniki między innymi w zakresie czasu rozruchu. Konsola z subsystemem udostępniała nam linuksowy terminal mgnienie oka po kliknięciu skrótu. Problem w tym, że mechanizm ten niósł ze sobą ograniczenia – problemy pojawiły się w dostępie do windowsowego systemu plików czy wykorzystaniu graficznych demonów, które narysowałyby GUI którejkolwiek z linuksowych aplikacji.

Wiele zmieniło się za sprawą drugiej odsłony subsystemu, trzeba jednak zauważyć, że odtąd nie był to już żaden subsystem, lecz zwyczajna maszyna wirtualna hipernadzorowana przez Hyper-X. Miało to swoje pozytywy, dziś przy odrobinie samozaparcia na Windowsie można uruchamiać interfejsy aplikacji przygotowane z użyciem Qt, ale także koszty: znacząco spadła wydajność całego przedsięwzięcia. Nadal jednak, co rzadko zdarza się w Redmond, pozostawiono nam wybór – nikt nikomu nie zabrania korzystać z pierwszej odsłony subsystemu. 

Windows Subsystem for Linux w GA

Choć z Windows Subsystem for Linux można korzystać już ponad pięć lat, i nie brakuje firm, które w ogóle zrezygnowały z rozwijania swoich klientów dla Windowsa (np. zalecanym przez twórców sposobem korzystania z Dockera jest właśnie ten z użyciem WSL) to dopiero dziś doczekał się on statusu General Availability. 

WSL
Mimo GA nie wszystko idzie jak z płatka ;)


Co to oznacza w praktyce? Przy okazji aktualizacji wyeliminowano ponad 100 błędów i na tym w zasadzie koniec. Po prostu WSL zrzucił metkę „preview” w Windows Store i nie ma już także przeciwwskazań, aby korzystać z subsystemy, czy raczej maszyny wirtualnej w środowiskach produkcyjnych. Z WSL-a można korzystać równie dobrze na Windowsie 10, jak i 11, możliwe jest już także zadeklarowanie, że chce się korzystać z systemd.

Przy okazji oficjalnej premiery Windows Subsystem for Linux warto powrócić do kwestii rozróżnienia pomiędzy wersjami. Udostępniona dziś w GA wersja dostępna w Windows Store to domyślnie druga odsłona subsystemu, czyli maszyna wirtualna. Nic jednak nie stoi na przeszkodzie, i na razie ze strony Microsoftu brak informacji, by miało się to zmienić w najbliższej przyszłości, by nadal swobodnie korzystać z WSL-a 1. Wystarczy podczas instalacji wydać polecenie wsl --install --enable-wsl1.

Linux na zasadach Microsoftu

WSL w GA to także dobry moment, aby zastanowić się, po co tak naprawdę Microsoft pracuje nad subsystemem. Nie ma wątpliwości, że jest to ukłon w stronę developerów, bo to właśnie oni zdają się największym kapitałem korporacji z Redmond. Z drugiej zaś strony czuć tu znamiona niby dawnej taktyki embrace, extend, and extinguish. Z jednej strony Microsoft kocha Linuksa, z drugiej zaś chce, aby miłość ta trwała według jego zasad – czyli nie jako Ubuntu czy Fedora na metalu, lecz grzeczny subsystem, maszyna wirtualna, uruchamiana w środowisku windowsowym i pod jego ścisłą kontrolą.

<p>Loading...</p>