Упознавање са WSL2: Детаљан водич за Линукс у Виндовсу
Виндовс и Линукс представљају два најраспрострањенија оперативна система на свету. Виндовс се истиче својом једноставношћу употребе, док Линукс, са својим широким могућностима прилагођавања, представља омиљени избор за програмере, продуктивне кориснике и студенте.
За истовремено коришћење ова два система, традиционално је било неопходно користити виртуелизацију унутар Виндовса или изводити двоструко покретање оперативног система.
Међутим, захваљујући новој Виндовс функцији, сада је могуће једноставно приступити Линуксу директно из Виндовс окружења.
Представљамо WSL2 – Виндовс подсистем за Линукс. Ова функција омогућава интеграцију Линукса у Виндовс без додатних компликација.
У овом чланку, детаљно ћемо истражити WSL2, од његове дефиниције и сврхе, преко процеса инсталације, до ефикасног коришћења.
Започнимо.
Шта је Виндовс подсистем за Линукс?
Виндовс подсистем за Линукс (WSL) вам омогућава приступ ГНУ/Линукс окружењу директно из Виндовс терминала, елиминишући потребу за двоструким покретањем или коришћењем виртуелизацијских алата. Са њим можете приступити Линукс језгру, омогућавајући вам да користите Линукс функције у Виндовсу, укључујући командне линије, апликације и услужне програме.
WSL2 је најновија верзија подсистема, која нуди побољшане карактеристике и већу брзину у односу на WSL1 (првобитно представљен у Виндовс 10). Већина Виндовс инсталација долази са већ инсталираним WSL-ом, али га је потребно активирати.
Иза кулиса, WSL2 користи Виндовс Хипер-В технологију виртуелних машина, што резултира компатибилношћу са Линуксом и повећањем брзине извршавања до 20 пута у поређењу са WSL1.
Укратко, WSL2 представља најновији Виндовс подсистем за Линукс који корисницима Виндовса попут вас даје директан приступ Линукс језгру.
Почетак рада са WSL2
Током нашег водича користићемо Виндовс терминал, који се показао као практичан и препоручен алат за рад са терминалима у Виндовсу. То је модеран, брз и ефикасан терминал за кориснике који желе да користе командне линије и WSL.
Системски захтеви
Не подржавају сви рачунари WSL2. Ваш систем мора подржавати виртуелизацију за покретање WSL2, јер WSL2 користи Хипер-В технологију.
Такође, потребан вам је 64-битни процесор са подршком за SLAT (Second Level Address Translation), што подржава већина савремених процесора.
Што се тиче простора на диску, потребно је најмање 1GB слободног простора.
Омогућавање виртуелизације из BIOS-а
Ако ваш систем испуњава хардверске захтеве, потребно је омогућити виртуелизацију из BIOS-а ваше матичне плоче.
Приступите BIOS-у притиском на тастере као што су F2, Del или F10 током покретања рачунара.
У BIOS-у пронађите и омогућите AMD Secure Virtual Machine (SVM) или Intel Virtualization Technology (VT-x). Након тога, поново покрените рачунар.
За додатна појашњења, можете погледати мој претходни чланак о томе како инсталирати Убунту на Виндовс 10 користећи Хипер-В.
Активирање Виндовс функција за WSL2
Након што сте испунили хардверске захтеве, време је да активирате WSL2 у самом Виндовсу.
Први корак је провера верзије вашег Виндовс оперативног система, како бисте утврдили да ли ваш Виндовс подржава WSL.
Притисните CMD + R на тастатури и унесите „winver“. Ово ће приказати верзију вашег Виндовс оперативног система.
Ако користите Виндовс 10, вероватно користите WSL1. Међутим, већина корисника Виндовс 11 већ има WSL2.
Све верзије Виндовс 10 и 11 подржавају WSL2, изузев Виндовс S верзије, која је фокусирана на безбедност и има онемогућену виртуелизацију.
Уколико користите Виндовс S, морате прећи на другу верзију, попут Виндовс Хоме или Про.
Идите на Подешавања > Ажурирање и безбедност > Активација да бисте променили свој оперативни систем.
Поред тога, морате инсталирати најновију верзију Виндовс исправки, како бисте обезбедили пуну компатибилност и подршку за WSL2. Да бисте ажурирали систем, идите на Подешавања > Виндовс Упдате.
За коришћење WSL2, потребно је омогућити неколико Виндовс функција.
Идите на Контролну таблу > Програми и функције. У оквиру њега, потражите „Укључите или искључите функције оперативног система Windows“. Кликните на то и отвориће се нови прозор „Виндовс функције“.
Пронађите и означите „Хипер-В“, „Платформа виртуелне машине“ и „Виндовс подсистем за Линукс“.
Након тога, биће потребно поновно покретање рачунара да би промене ступиле на снагу.
Такође можете омогућити ове функције покретањем следећих команди:
$ dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
$ dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Инсталирање WSL2
Са испуњеним предусловима, време је да инсталирате WSL.
Отворите Виндовс терминал (Виндовс 10) или Виндовс ПоверСхелл (Виндовс 11), и укуцајте следећу команду:
$ wsl
#оутпут
Copyright (c) Microsoft Corporation. All rights reserved. Usage: wsl.exe [Argument] Arguments: .....
Ово значи да је WSL доступан, али није активан.
Да бисте инсталирали WSL, покрените следећу команду са администраторским привилегијама:
$ wsl --install
#оутпут
PS C:UsersLogan99> wsl --install Installing: Virtual Machine Platform Virtual Machine Platform has been installed. Installing: Windows Subsystem for Linux Windows Subsystem for Linux has been installed. Installing: Ubuntu Ubuntu has been installed. The requested operation is successful. Changes will not be effective until the system is rebooted.
Напомена: Ово можда нећете видети уколико сте омогућили функције преко Виндовс функција. Уместо тога, требало би да добијете следећи излаз (ако га добијете, пређите на следећи одељак):
Ubuntu is already installed. Launching Ubuntu... Installing, this may take a few minutes... Please create a default UNIX user account. The username does not need to match your Windows username. For more information visit: https://aka.ms/wslusers Enter new UNIX username: New password: Retype new password:
Да бисте проверили верзију WSL-а, укуцајте команду
wsl --version
:
$ wsl --version
#оутпут
WSL version: 1.1.6.0 Kernel version: 5.15.90.1 WSLg version: 1.0.50 MSRDC version: 1.2.3770 Direct3D version: 1.608.2-61064218 DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp Windows version: 10.0.22621.1413
Као што видите, WSL верзија 1.1.6.0 је већ инсталирана. Ако не ради и пријављује грешку, WSL није инсталиран.
Да бисте прешли на WSL2, покрените следећу команду:
$ wsl --set-default-version 2
Пошто наш систем већ има инсталиран WSL, добијамо ову поруку.
Такође, можете инсталирати WSL из Виндовс продавнице. Отворите Продавницу и потражите „Виндовс подсистем за Линукс“.
Кликните на „Преузми“ и сачекајте да се инсталира.
Када се инсталира, можете кликнути на „Отвори“, што ће отворити Виндовс терминал са поруком „Виндовс подсистем за Линукс нема инсталиране дистрибуције“.
Инсталирање дистрибуција на WSL
Са инсталираним WSL-ом, време је да инсталирате Линукс дистрибуције.
Подразумевано, WSL инсталира Убунту ЛТС верзију. Да бисте то урадили, покрените следећу команду:
$ wsl --install
Инсталација Убунту-а ће започети. Током инсталације, од вас ће се тражити да поставите ново УНИКС корисничко име и лозинку.
Када се инсталација заврши, добићете Убунту Линукс промпт, где можете користити све Линукс команде. Хајде да проверимо верзију Убунту-а.
$ lsb_release -a
#оутпут
No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.1 LTS Release: 22.04 Codename: jammy
То је то! Сада имате приступ Линукс језгру.
Да бисте изашли из дистрибуције, укуцајте следећу команду:
$ exit
#оутпут
[email protected]:/mnt/c/Users/Logan99$ exit logout
Инсталирање више дистрибуција
На сличан начин, можете инсталирати друге дистрибуције попут Федора, Дебиан и OracleLinux_8_5. Да бисте видели доступне дистро опције, укуцајте следећу команду:
$ wsl --list --online
Да бисмо инсталирали Дебиан, морамо унети следећу наредбу:
$ wsl --install -d Debian
или
$ wsl.exe --install Debian
Као и код Убунту-а, од вас ће се тражити да унесете корисничко име и лозинку.
#оутпут
Сада, проверимо Дебиан верзију:
$ cat /etc/issue
#оутпут
$ Debian GNU/Linux 11 n l
А шта је са Федором? Не налази се на листи када користите команду
wsl --list --online
.
Дистрибуције можете инсталирати и из Виндовс продавнице.
Отворите Виндовс продавницу и укуцајте „Линукс дистрос“. Навешће све доступне. Овде можете видети само званично подржане дистрибуције.
За незваничну подршку дистрибуција, мораћете да претражујете ручно. Међутим, незваничне дистрибуције могу бити неисправне и нису 100% безбедне. Користите их само у експерименталне сврхе.
Кликните на „Инсталирај“ да бисте је учинили доступном на вашем систему.
Подешавање подразумеване дистрибуције
Ако желите да видите листу доступних дистрибуција, користите следећу команду:
$ wsl --list
Кључна реч „Подразумевано“ поред Убунту-а означава да се подразумевана Линукс дистрибуција покреће када укуцате „wsl“ у командној линији.
Да бисте променили подразумевану дистрибуцију, укуцајте следећу команду:
$ wsl --setdefault <DistroName>
Дакле, да бисте поставили Дебиан као подразумевану дистрибуцију, користите следећу команду:
$ wsl --setdefault Debian
Следећи пут када укуцате wsl у терминалу, покренуће се Дебиан.
Промена WSL верзије за дистрибуцију
Подразумевано, дистрибуције користе WSL2. Да бисте видели списак инсталираних дистрибуција и њихову WSL верзију, укуцајте следећу команду:
$ wsl --list --verbose
#оутпут
NAME STATE VERSION * Ubuntu Stopped 2 Debian Stopped 2
Овде се * односи на подразумевану инсталацију Линукса.
Да бисте променили WSL верзију са 2 на 1, укуцајте:
$ wsl --set-version Ubuntu 1
И, ако желите да се вратите на 2 са 1, укуцајте:
$ wsl --set-vesion Ubuntu 2
Напомена: Промена може потрајати неко време. Током конверзије, не затварајте прозор.
Покретање одређених дистрибуција са различитим корисничким именима
Шта ако желите да покренете одређену дистрибуцију? Да бисте то урадили, укуцајте следећу команду:
$ wsl -d <DistroName>
или
$ wsl --distribution <DistroName>
Да бисте покренули Убунту, укуцајте:
$ wsl -d Ubuntu
Ако желите да га покренете са одређеним корисничким именом, додајте
--user
након кога следи корисничко име.
$ wsl -d <DistroName> --user <UserName>
На пример, да бисте покренули Дебиан са „root“ корисничким именом:
$ wsl -d Debian --user root
Напомена: Покретање дистрибуције са непостојећим корисником ће приказати грешку „User not found“.
Ажурирање Линукса
Можете ажурирати Линукс дистрибуцију користећи следећу команду:
$ sudo apt update
$ sudo apt upgrade
Такође, можете проверити и ажурирања Линукс језгра за WSL:
$ wsl --update
Подешавање Visual Studio Code са WSL2
Можете подесити VS Code да ради са WSL-ом. На тај начин можете приступити WSL терминалу директно из VS Code-а. То вам може помоћи у развоју апликација на Линукс окружењу док користите Линукс алате.
Штавише, можете имати приступ Виндовс алатима док користите предности VS Code функција.
Да би то функционисало, инсталирајте пакет проширења за даљински развој. Можете га пронаћи у VS Code претрагом његовог имена у картици проширења.
Ако радите локално, можете га подесити преко VS Code менија: View > Терминал.
Отвара се терминал. Поред симбола „+“, налази се симбол „>“. Кликните на њега и наћи ћете WSL терминале.
Овде можете изабрати „Подразумевани профил“.
Ово је могуће јер VS Code може директно да приступи
\wsl$
и свим програмима за отклањање грешака који раде на локалном хосту.
Рад са графичким апликацијама и WSL2
Да бисте радили са графичким апликацијама, потребно је инсталирати одговарајуће драјвере за WSL2. Intel, AMD и Nvidia нуде драјвере за WSL, што омогућава графичким апликацијама заснованим на Линуксу несметан рад.
Међутим, још увек се можете суочити са проблемима при овом приступу. Прво, графичке апликације могу имати неке функције које не раде. Такође, многе апликације можда неће радити, због чега ћете морати да тражите алтернативе.
Укратко, то је првенствено метода покушаја и грешака, где можете потрошити превише времена.
Можете проверити њихов WSL2 водич за рад са графичким апликацијама користећи Убунту.
Docker Desktop WSL2 на Виндовсу
Ако не желите локално подешавање помоћу Хипер-В, можете користити Docker Desktop, који званично подржава WSL2. Са њим можете подесити бржи ток посла за коришћење Docker алата директно у Виндовсу. За више информација, погледајте водич овде.
Зашто Microsoft озбиљно схвата Линукс?
Microsoft је компанија која ради на власничким решењима. Они креирају решења попут Виндовса у затвореном окружењу и желе да се корисници држе Виндовса, а не Линукса.
Међутим, 2016. године су најавили посвећеност отвореном коду. Став је промењен почетком 2001. када је Стив Балмер назвао Линукс „раком“.
До 2023. године, ствари су се промениле. Microsoft усваја Линукс директно у свој екосистем. WSL2 је најављен у мају 2019. године, а представљен у Виндовс продавници у октобру 2021. Такође су објавили WSL2 v1.0 у новембру 2022.
Софтвер компаније Microsoft, као што су Edge и Teams, је доступан корисницима Линукса. Microsoft активно доприноси Линукс језгру и члан је Linux фондације.
Све ово указује да Microsoft озбиљно схвата Линукс. Међутим, неки скептици не верују да Microsoft воли Линукс.
Microsoft је заинтересован за Линукс. Њихов подсистем Виндовс је доказ да им је стало до Линукса и отвореног кода. Желе да корисници имају неометан приступ Линукс језгру без потребе за виртуелизацијом или двоструким покретањем Линукс оперативног система.
Завршне речи
У доба „који је ОС најбољи за програмере“, програмери сада могу изабрати пут ка оба. WSL2 пружа приступ Линукс језгру преко различитих Линукс дистрибуција. Поред тога, брз је и ради са Docker-ом.
WSL2 је тренутно у активном развоју, решавају се проблеми компатибилности и даје се већа моћ програмерима. Будућност изгледа светла са WSL2, а Microsoft предузима кораке да Линукс језгро учини доступним својим Виндовс корисницима.
Погледајте Линукс дистрибуције да бисте сазнали више о систему као администратор и програмер.