Nasza strona używa cookies. Korzystając ze strony, wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki. Rozumiem

Dual Boot już niepotrzebny: Linux na Windowsie z WSL 2

Dimitris Poulopoulos Machine Learning Researcher / BigDataStack
Sprawdź, jak odpalić Linuxa na Windowsie przez WSL 2 bez potrzeby instalacji tych dwóch systemów na oddzielnych partycjach.
Dual Boot już niepotrzebny: Linux na Windowsie z WSL 2

Miałem kiedyś laptopa od Apple. Mogłem tam robić prawie wszystko: programować, tworzyć dokumenty, komponować muzykę itp. Jednak strach przed uzależnieniem się od producenta oraz obawa, że jestem zależny od kaprysów i wad Apple — które są prawdopodobnie bardzo drogie — skłoniły mnie do poszukiwania nowego rozwiązania. Zbudowałem maszynę, która dobrze poradzi sobie z uczeniem maszynowym: świetny procesor, dużo pamięci RAM i dobra karta graficzna. Jako system operacyjny wybrałem Ubuntu, ale potrzebowałem pakietu Microsoft Office do pisania dokumentów. 

Wersja online Office'a jeszcze nie istnieje i, spójrzmy prawdzie w oczy, LibreOffice to jakiś dramat. Tak więc rozwiązaniem był dual boot Ubuntu i Windows 10. Swoboda, którą odczuwasz, przenosząc się z Apple na Ubuntu, jest nie do porównania, a opcje, jakie masz przy tworzeniu własnego komputera, są prawie nieograniczone.

Podwójny rozruch przez długi czas mi wystarczał. Później jednak pojawił się WSL, dlatego zacząłem przenosić część mojej pracy do systemu Windows. Ale wciąż brakowało wielu rzeczy. Wydaje się jednak, że WSL 2 jest rewolucyjne. Pokażę tutaj, jak przenieść swoją pracę na Windows 10 i WSL 2, omówię nowe funkcje tego drugiego i opowiem o tym, czego można się spodziewać w najbliższej przyszłości.


Czym jest WSL 2?

WSL 2 to nowa wersja Windows Subsystem for Linux. Zawiera ona kilka zmian, które decydują o tym, jak dystrybucje Linuksa współdziałają z Windowsem. Dzięki temu zyskujesz wyższą wydajność systemu plików i pełną zgodność wywołań systemowych. Oczywiście można odpalić dystrybucję Linuksa jako WSL 1 lub WSL 2, a ponadto można też przełączać między tymi wersjami w dowolnym momencie.

WSL 2 mocno zmienił architekturę, która jest pod spodem i wykorzystuje technologię wirtualizacji oraz jądro Linuksa, aby umożliwić nowe funkcje. Microsoft zajmuje się istotnymi szczegółami, dzięki czemu możesz skupić się na tym, co ważne.


Instalacja

Microsoft obiecał, że niebawem instalacja WSL 2 będzie procesem zupełnie trywialnym i doda możliwość aktualizacji jądra Linuxa z poziomu Windows Update. Na razie proces instalacji jest nieco bardziej zawiły, ale nie jakoś strasznie.

Instalujemy Ubuntu 20.04 na Windowsie 10. Proces jest jednak taki sam dla każdej dystrybucji dostępnej w sklepie Microsoft. Najpierw należy włączyć opcjonalną funkcję podsystemu Windows dla Linuxa. Otwórz PowerShell jako Administrator i uruchom następujące polecenie:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart


Następnie aktualizujemy nasz system do WSL 2. W tym celu system Windows 10 musi zostać zaktualizowany do wersji 2004, a technologia wirtualizacji Intela musi być włączona w ustawieniach BIOS. Odpal PowerShell jako administrator i uruchom następujące polecenie:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart


Uruchom ponownie komputer, aby ukończyć instalację WSL i zaktualizuj dalej do WSL 2. Następnie musisz ustawić WSL 2 jako domyślną wersję podczas instalowania nowej dystrybucji. W tym celu otwórz PowerShell jako administrator i uruchom następujące polecenie:

wsl --set-default-version 2


Taki komunikat może zostać wyświetlony po uruchomieniu tej komendy: WSL 2 requires an update to its kernel component. Aby dowiedzieć się więcej, odwiedź https://docs.microsoft.com/en-us/windows/wsl/wsl2-kernel. Zainstaluj MSI, aby rozpocząć instalację jądra Linuxa i móc korzystać z WSL 2. Po zainstalowaniu jądra uruchom komendę ponownie — wszystko powinno się zakończyć pomyślnie bez wyświetlania komunikatu.

Na koniec powinniśmy zainstalować dystrybucję Linuxa. Otwórz Microsoft Store i wyszukaj Ubuntu 20.04 LTS. Po zainstalowaniu będzie można znaleźć nową aplikację Ubuntu w menu Start. Uruchom ją i postępuj zgodnie z instrukcjami (przede wszystkim utwórz nowego użytkownika UNIX), aby zakończyć instalację.

Aby sprawdzić, czy dystrybucja Linuksa jest zainstalowana na WSL 2, uruchom polecenie wsl--list--verbose. Jeśli wynik wskazuje na to, że używany jest WSL 1, możesz to zmienić, uruchamiając wsl--set-version <distribution name> <versionNumber>. I to wszystko. Masz teraz pełną dystrybucję Ubuntu w systemie Windows 10!


Stanowisko dla programisty

Po przygotowaniu Ubuntu możesz zainstalować wszystko, czego potrzebujesz, np. najnowszą dystrybucję Anaconda, jeśli pracujesz jako data scientist, Angulara i npm, jeśli jesteś frontendowcem i wiele innych. Są jednak dwa narzędzia, na których chciałbym się skupić: Visual Studio Code i Docker + Kubernetes.


Visual Studio Code 

Visual Studio Code zostało wybrane przez wielu programistów jako swoje IDE. Teraz gdy mamy włączony WSL 2, absolutnie konieczne rozszerzenie dla VS Code to Remote Development. Ta wtyczka umożliwia zdalne tworzenie kodu źródłowego istniejącego na WSL 2, kontener lub nawet zdalną maszynę wirtualną za pośrednictwem SSH. Możemy w ten sposób tworzyć foldery projektów w naszej dystrybucji Linuksa działającej na WSL 2 i używać edytora Visual Studio Code zainstalowanego w Windows 10 jako naszego IDE.

Dostępne są wszystkie funkcje: pełna obsługa z IntelliSense, integracja git, rozszerzenia Visual Studio Code, debugger oraz terminal. Nic tylko zacząć kodować.


Docker + Kubernetes

Docker na Windowsie działa w miarę ok, ale nie wspaniale. To jest to, czego brakowało mi najbardziej, czyli możliwości przełączania się między Windowsem a Ubuntu, ilekroć potrzebowałem zbudować obraz dokera dla mojego kodu. WSL 2 wspiera w pełni Dockera, a całe doświadczenie jest moim zdaniem nawet lepsze niż na zwykłym Linuxie.Aby go włączyć, przejdź do ustawień Docker Desktop i włącz opcję Use the WSL 2 based engine.


Umożliwianie działania Dockera dla WSL 2


Ponadto możesz uruchomić lokalny klaster Kubernetes, przechodząc do sekcji ustawień Kubernetes i zaznaczając odpowiednie pole.


Umożliwianie działania Kubernetesa na WSL 2


Możesz teraz powrócić do Ubuntu na WSL 2, uruchomić wersję dokera lub wersję kubectl i sprawdzić, czy oba są uruchomione.

Docker oraz Kubernetes uruchomiona na WSL 2


Bonus: nowy Windows Terminal

Możesz też zainstalować nowy Windows Terminal. W Microsoft Store jest opisany jako nowoczesna, szybka, wydajna i produktywna aplikacja terminala dla użytkowników narzędzi typu command-line i powłok, takich jak Command Prompt, PowerShell oraz WSL. Jego główne funkcje obejmują uruchamianie wielu kart naraz, panele, obsługę znaków Unicode i UTF-8, renderowanie przez GPU oraz niestandardowe motywy, style i konfiguracje.

Co więcej, jest bardzo piękny i możesz go stylizować, jak tylko chcesz, za pomocą dostępnych ustawień, które są tylko plikiem JSON. Zainspiruj się czymś! Więcej informacji o nowym terminalu Windows tutaj.


Plany na przyszłość

Wciąż brakuje niektórych funkcji, ale WSL 2 jest na dobrej drodze. W nadchodzących miesiącach będzie można zainstalować WSL za pomocą jednego polecenia. Wystarczy otworzyć terminal Windows i wprowadzić wsl.exe--install. Ponadto WSL 2 stanie się domyślną wersją WSL. Są jednak dwie funkcje wyczekiwane funkcje: obsługa GPU i aplikacji GUI.

Dodanie obsługi CUDA lub obliczeń za pomocą GPU do WSL jest najbardziej pożądaną funkcją od czasu wydania WSL 1. Od kilku lat zespoły WSL, wirtualizacji, DirectX i sterowników nad tym pracują. Starajcie się niczego nie pominąć!

Wytrenuj model Deep Learning na WSL 2 (z włączonym CUDA)

Ponadto nadchodzi również obsługa Linuxowych aplikacji GUI. Będzie na przykład można uruchomić preferowany edytor tekstowy lub IDE w zainstalowanym środowisku Linux. Będziesz mógł nawet tworzyć aplikacje GUI dla systemu Linux, a wszystko na komputerze z systemem Windows!

Obsługa Linux GUI dla WSL 2


Podsumowanie

Zobaczyliśmy tutaj, jak WSL 2 może zmienić komputer z systemem Windows w stanowisko pracy dla programistów, na której działa dystrybucja systemu Linux. Już w tym momencie mamy wystarczającą szybkość działania i najważniejsze funkcje, a nadchodzi jeszcze więcej. Dlatego myślę, że podwójny rozruch, z oddzielnym Windowsem i Linuxem, większości osób nie jest już potrzebny.


Oryginał tekstu w języku angielskim przeczytasz tutaj.

Lubisz dzielić się wiedzą i chcesz zostać autorem?

Podziel się wiedzą z 160 tysiącami naszych czytelników

Dowiedz się więcej