Ако работите в областта на разработката на софтуер, системната администрация или просто обичате да експериментирате с Linux, WSL2 се превърна в почти незаменим инструмент в Windows.Това ви позволява да имате пълна GNU/Linux среда, с истинско ядро, директно интегрирано във вашия компютър, без да се затруднявате с тежки виртуални машини или конфигурации с двойно зареждане.
В това ръководство ще видим Как да инсталирате и конфигурирате WSL2 стъпка по стъпка на Windows 10 и Windows 11Какви изисквания трябва да отговаряте, как да изберете най-добрата Linux дистрибуция за вашите нужди, как да управлявате множество дистрибуции и какви най-добри практики да следвате, за да извлечете максимума от вашата система и да избегнете типичните грешки, които често възникват по време на инсталацията.
Какво е WSL и какви предимства има WSL2?
WSL (Windows Subsystem for Linux) е функция на Windows, която Позволява ви да стартирате GNU/Linux дистрибуции като Ubuntu, Debian, Kali или Alpine директно върху Windows., използвайки обичайните си инструменти и команди (bash, ssh, git, grep и др.), без да е необходима традиционна виртуална машина.
С появата на WSL2, Microsoft направи значителен скок, защото Премина от слой за съвместимост до изпълнение на истинско Linux ядро в лека виртуална машинаТова се изразява в значително подобрена производителност на файловата система и мрежата, както и в почти пълна съвместимост със системните повиквания на Linux.
Сред най-интересните предимства на WSL2 са Много по-бърз достъп до диск и мрежа, оптимизирано използване на паметта и безпроблемна интеграция между файлове на Windows и Linux, като можете да работите по едни и същи проекти от двата свята, без да си натоварвате главата.
За съвременните среди за разработка, WSL2 е идеален, защото Той се вписва идеално в работни процеси, базирани на контейнери на Docker, CI/CD, уеб разработка и наука за данни.което позволява на вашата лаптопна среда да наподобява максимално вашите производствени сървъри (които обикновено са Linux).
Предварителни изисквания за инсталиране на WSL2
Преди да започнете да изпълнявате команди като луди, си струва да проверите това Вашата версия на Windows е съвместима с WSL2 и виртуализацията е активирана в BIOSВ противен случай ще се сблъскате с някои доста объркващи грешки.
В зависимост от операционната система, WSL2 е наличен за Windows 10 и Windows 11Има обаче някои специфични минимални изисквания за версия. В Windows 10 ви е необходима поне версия 1903 с компилация 18362 за основен WSL, а за да се възползвате максимално от WSL2, се препоръчва версия 2004 с компилация 19041 или по-нова. В Windows 11 почти всички съвременни издания включват WSL2 по подразбиране.
За да проверите точната си версия, Натиснете Win+R, въведете „winver“ и натиснете OK.Ще се отвори малък прозорец, показващ изданието, версията и компилацията на Windows. Ако тази информация е недостатъчна, ще трябва да актуализирате Windows от Настройки > Актуализиране и защита.
В допълнение към версията за Windows, Задължително е хардуерната виртуализация да е активирана в BIOS/UEFI на вашия компютър.Ако не е активирана, WSL2 няма да може да се стартира и ще видите грешки като 0x80370102 или съобщения за Hyper-V. Опцията има различно име в зависимост от производителя (Intel VT-x, Intel Virtualization Technology, AMD-V, SVM и др.), но идеята е същата: влезте в BIOS, намерете процесора или раздела за сигурност и активирайте виртуализацията.
Друга важна подробност е това WSL2 не се поддържа в Windows 10 S и може да има ограничения в някои LTSC издания или в Windows Server с корпоративни политики.В тези случаи често ще се налага да прибягвате до ръчно инсталиране на дистрибуции с appx или tar файлове вместо от Microsoft Store.
Бърз метод: Инсталирайте WSL2 с една команда
В съвременните версии на Windows, Microsoft значително е опростила процеса, дотолкова, че Можете да имате WSL и работеща Linux дистрибуция с една команда., без да отметвате квадратчета в функциите на Windows.
Препоръчителният метод е да отворите PowerShell или командния ред като администратор (щракнете с десния бутон върху иконата и изберете „Изпълни като администратор“) и изпълнете:
wsl --install
Тази команда Той автоматично активира необходимите функции на подсистемата Windows за Linux и платформата за виртуални машини.Изтеглете ядрото на Linux за WSL2 и по подразбиране инсталирайте Ubuntu като първоначална Linux дистрибуция на вашата система.
Когато процесът приключи, Windows ще ви подкани да рестартирате. След първото рестартиране, Когато отворите Linux дистрибуцията за първи път, ще видите съобщение за инсталиране и създаване на потребител.Докато файловете се декомпресират и средата се подготвя, първото стартиране отнема малко време, но следващите стартирания са практически мигновени.
Ако предпочитате да използвате различна дистрибуция от Ubuntu от самото начало, Можете да го укажете с параметъра -dНапример, за да инсталирате Debian директно:
wsl --install -d Debian
По всяко време можете да видите списъка с официални дистрибуции, достъпни за инсталиране, с:
wsl --list --online
Ръчно инсталиране на WSL2 стъпка по стъпка
Бързата команда е чудесна, но на компютри с по-стари версии на Windows 10, на Windows Server или когато има ограничителни корпоративни политикиМоже да се наложи да следвате традиционната ръчна процедура стъпка по стъпка.
Първата стъпка е да Активирайте опционалната функция „Подсистема на Windows за Linux“За да направите това, отворете PowerShell като администратор и изпълнете:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Това подготвя системата ви да работи с базов WSL (WSL1). Ако искате само тази версия, можете да рестартирате сега и след това да продължите директно с инсталирането на дистрибуция. Но за да използвате WSL2, Препоръчително е да следвате тези стъпки преди или веднага след рестартиране..
Втората стъпка е Активирайте функцията „Платформа за виртуални машини“което е основата, върху която работи ядрото на WSL2 Linux. Отново, в PowerShell като администратор, изпълнете:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
След като активирате тези две функции, Рестартирайте компютъра си, за да може Windows да завърши прилагането на промените.Това е ключов момент, защото ако не рестартирате, ще започнете да виждате странни грешки, когато използвате WSL.
След рестартиране е време да инсталирате или актуализирате Пакет с ядро на Linux за WSLMicrosoft предлага MSI инсталатор, който изтегля най-новата версия на ядрото. Можете да го получите от официалната страница на WSL в GitHub или от документацията на Microsoft, да го изтеглите и да го стартирате като всеки друг инсталатор, приемайки повишени привилегии, когато бъдете подканени.
След като пакетът с ядрото е инсталиран, Добра идея е да оставите WSL2 като версия по подразбиране за всички нови дистрибуции, които инсталирате.Правите го с тази команда в PowerShell или CMD:
wsl --set-default-version 2
От този момент нататък, Всяка нова дистрибуция ще бъде създадена директно в WSL2.Въпреки това, винаги можете да принудите всяка конкретна дистрибуция да премине към WSL1 или WSL2 по-късно, като използвате командата за промяна на версията.
Инсталирайте Linux дистрибуция за WSL2
С активиран WSL и WSL2, зададен по подразбиране, Следващата стъпка е да изберете и инсталирате любимата си GNU/Linux дистрибуцияЕто няколко опции в зависимост от това дали можете да използвате Microsoft Store или трябва да го инсталирате ръчно.
В най-комфортния сценарий, Отворете Microsoft Store и потърсете „Linux“ или директно желаната дистрибуция.Ubuntu, Debian, Kali Linux, Fedora, Arch, openSUSE, Alpine, Oracle Linux, Rocky, AlmaLinux и др. Всяка от тях има своя собствена страница и се инсталира с бутона „Get“ като всяко друго приложение.
Щракването върху „Вземи“ ще изтегли файловете от магазина и След като инсталацията приключи, ще видите бутона „Старт“.Първия път, когато го отворите, ще се появи конзола с вътрешен процес на инсталиране и след това ще ви помоли да създадете потребителско име и парола за тази Linux система.
Ако не можете да използвате магазина (например, на Windows Server, LTSC версии или компютри с корпоративни политики, които блокират Microsoft StoreКато алтернатива, можете да изтеглите .appx пакетите за дистрибуциите директно от официалните връзки на Microsoft. Тези пакети се инсталират с командата:
Add-AppxPackage .\nombre_de_la_distro.appx
Друга алтернатива, много полезна, когато Microsoft предлага директни URL адреси, е Използвайте curl.exe или Invoke-WebRequest, за да изтеглите пакета от PowerShellНапример, можете да направите нещо подобно:
Invoke-WebRequest -Uri https://aka.ms/wslubuntu2204 -OutFile Ubuntu.appx -UseBasicParsing
След като пакетът appx бъде изтеглен и инсталиран, Просто щракнете двукратно върху файла или стартирайте дистрибуцията от менюто "Старт". така че конфигурацията да може да бъде завършена и да можете да създадете вашия Linux потребител.
Първо зареждане: създаване на потребител и конфигуриране на дистрибуцията
Когато стартирате за първи път новоинсталирана дистрибуция, WSL показва съобщение, обясняващо, че инсталира системата и че това може да отнеме няколко минути.Това е нормално; декомпресира rootfs и подготвя средата.
Когато приключи, ще видите известие, подобно на това:
Installing, this may take a few minutes...
Please create a default UNIX user account.
Enter new UNIX username:
По това време ще трябва Изберете потребителско име за вашия Linux акаунт, което ще бъде потребителят по подразбиране който ще използвате за влизане в тази дистрибуция и който обикновено ще има sudo разрешения.
Препоръчително е потребителското име да бъде с малки букви, без ударения или специални символиИ не е задължително да съвпада с потребителското ви име в Windows. Същото име ще се използва например за вашата домашна папка. /home/manuel ако сте избрали „Мануел“.
След това системата ще ви попита Въведете парола за този потребител и я потвърдете.Изключително важно е да запомните тези идентификационни данни, защото те ще бъдат същите, които използвате за sudo операции и за достъп до средата, ако активирате допълнителни услуги.
След като потребителят е създаден, След това вашата GNU/Linux дистрибуция ще работи напълно в Windows.Оттам можете да актуализирате пакети с apt, dnf или pacman в зависимост от дистрибуцията, да инсталирате инструменти за разработка, уеб сървъри, бази данни и т.н.
Основни команди за управление на WSL и WSL2
WSL се управлява предимно с командата wsl.exe от PowerShell или командния редИма редица команди, които е полезно да знаете, за да разберете какво сте инсталирали и каква версия използва всяка дистрибуция.
За да изброите наличните дистрибуции и да видите техния статус и версия, Можете да използвате параметъра -l -v (или дългата форма –list –verbose):
wsl -l -v
В резултата ще видите колони с името на дистрибуцията, дали работи или е спряна и дали е версия 1 или 2. Ако сте мигрирали от WSL1, тук ще проверите дали преобразуването е приложено правилно.
Ако искате да промените WSL версията на конкретна дистрибуция, използвайте командата --set-version посочвайки дистрибуцията и версия 1 или 2:
wsl --set-version Ubuntu 2
Това ще стартира процес на конвертиране, който може да отнеме известно време в зависимост от размера на файловата система на вашата дистрибуция. Обикновено отнема няколко минути, така че бъдете търпеливи. Когато приключи, ако го стартирате отново... wsl -l -vТрябва да видите колоната VERSION с числото 2.
Можете също да зададете Версията по подразбиране за нови инсталации с –set-default-version, както видяхме по-рано:
wsl --set-default-version 2
За да изберете кое разпределение ще бъде по подразбиране, когато пишете само wsl без параметри, Използвайте командата –set-default или нейния псевдоним -s посочващо името на дистрибуцията:
wsl --set-default Debian
Ако в даден момент се наложи да стартирате определена дистрибуция, без да променяте тази по подразбиране, Можете да използвате параметъра -d:
wsl -d Kali-Linux
И за да изпълните конкретна Linux команда от PowerShell или CMD без отваряне на интерактивна сесияПросто направете следното:
wsl ls -la
Това ще се изпълни ls -la в дистрибуцията по подразбиране и ще върне изхода директно към вашия Windows терминал, което е много удобно за малки скриптове или автоматизирани задачи.
Избор, инсталиране и управление на множество дистрибуции в WSL2
Едно от страхотните неща на WSL е, че Не сте ограничени до едно единствено разпределениеМожете да инсталирате колкото искате и да ги използвате за различни проекти или тестове, без да си пречат взаимно.
Най-често срещаното е да имаш Ubuntu или Debian като основа за общо развитиеНо можете да добавите Kali за сигурност, AlmaLinux или Rocky, за да симулирате среди от тип RHEL, openSUSE, за да изпробвате друга философия, или минималистични дистрибуции като Alpine за контейнери.
За да видите какви опции за бърза инсталация са налични в момента, Използвайте командата, която изброява онлайн дистрибуциите:
wsl --list --online
Резултатът ще ви покаже имената на дистрибуциите, готови за използване с wsl --install -d NombreDistroАко изберете платена версия в Microsoft Store, ще видите предупреждение, но много от тях също имат алтернативни канали за безплатно изтегляне извън магазина.
След като инсталирате няколко дистрибуции, Можете да зададете тази, която използвате най-често, като команда по подразбиране за ежедневните си команди. и стартирайте останалите от Windows Terminal, от менюто Start (търсейки "Ubuntu", "Debian" и т.н.) или с wsl -d когато имате нужда от нещо конкретно.
Ако в даден момент някоя от дистрибуциите престане да ви е полезна или я искате само за конкретен тест, Можете да го деинсталирате от „Приложения и функции на Windows“ или като използвате командата за отмяна на регистрация. (което премахва цялата дистрибуция и нейните данни). По този начин поддържате системата чиста и свободна от среди, които не използвате.
Интеграция с Docker, VS Code и работни процеси за разработка
WSL2 наистина блести, когато започнете да Интегрирайте го в ежедневния си работен процес за разработка с помощта на съвременни инструментиособено с Docker и Visual Studio Code.
В случая с Докер, Docker Desktop за Windows ви позволява да използвате WSL2 като бекендВместо класически Hyper-V, това значително подобрява производителността на контейнерите и опростява управлението на изображения и томове, тъй като те се изпълняват директно в рамките на същата Linux дистрибуция, която използвате за разработка.
За редакторите на код, Visual Studio Code има разширението Дистанционно – WSLкоето ви позволява да отворите папка от вашата Linux дистрибуция, сякаш работите директно там. На практика това означава, че Всички анализи на код, дебъгване, интегрирани терминали и инструменти се изпълняват в рамките на WSL2., докато графичният редактор работи на Windows.
Тази комбинация значително улеснява работата с него. микросървиси, API, Node.js, Python, Go или Ruby проекти, Docker приложения и облачни внедрявания (AWS, Azure и др.), защото тествате приложенията си почти по същия начин, както на истински Linux сървър.
В професионална или корпоративна среда, екипи, специализирани в персонализиран софтуер, киберсигурност или облачни услуги Те използват WSL2 за изграждане на непрекъснати интеграционни и внедряващи процеси, автоматизиране на тестването и работа с агенти с изкуствен интелект или инструменти за анализ на данни. без да напускат работната си станция с Windows.
Достъп и споделяне на файлове между Windows и Linux
Една от силните страни на WSL е, че Файловите системи на Windows и Linux са интегрирани доста прозрачно., което ви позволява да местите проекти без прекалено много триене.
От Линукс, Вашите Windows устройства се монтират автоматично под пътя /mntНапример, диск C ще изглежда така /mnt/c, D като /mnt/dи така нататък. Ако въведете /mnt/c/Users/TuUsuario Ще можете да манипулирате вашите документи, хранилища и файлове на Windows от терминала на Linux.
Обратно, можете да направите това и от Windows File Explorer достъп до файловете на вашата Linux дистрибуция директноWindows създава специални пътища и променливи на средата, за да достигне до вашия /homeОсвен това, с WSL2 е възможно да се навигира в браузъра, използвайки специални мрежови пътища, които сочат към файловата система на дистрибуцията.
Въпреки това, по отношение на производителността, Препоръчително е проектите за разработка да се намират във файловата система на самата Linux дистрибуция. (например /home/tuusuario/proyecto) и не в /mnt/cзащото достъпът през файловата система на Windows обикновено е много по-бавен, особено ако извършвате много малки операции.
Тази интеграция на файлове е особено полезна, когато Искате ли да редактирате документи с графични приложения за Windows и да изпълнявате скриптове или команди върху същите тези файлове от Linux?без да се налага дублиране на съдържание или създаване на сложни механизми за синхронизация.
Най-добри практики, производителност и сигурност в WSL2
След като имате WSL2 и една или повече дистрибуции, работещи, е добра идея да кандидатствате серия от най-добри практики за поддържане на стабилна, безопасна и високопроизводителна средаособено ако планирате да го използвате интензивно.
На първо място, Поддържайте WSL ядрото и самите дистрибуции актуалниМожете да актуализирате WSL компонента от Windows с:
wsl --update
И след това, в дистрибуцията, използвайте съответния мениджър на пакети (apt update && apt upgrade, dnf upgradeи др.), за да се гарантира, че целият софтуер е актуален и има приложени корекции за сигурност.
От гледна точка на сигурността, въпреки че WSL2 работи в рамките на лека виртуална машина, Това все още е Linux среда с услуги, портове и процеси, които може да имат уязвимости.Важно е да използвате потребител, който не е root, за ежедневна работа, да конфигурирате защитни стени, ако излагате услуги, и да избягвате оставянето на демони, които слушат на всички интерфейси без контрол.
За оборудване, често използвано за разработка на тежки задачи, наука за данни или контейнери, може да се интересувате от Коригиране на потреблението на ресурси на WSL2 (памет, процесор, swap) използвайки конфигурационния файл .wslconfig В Windows можете да ограничите колко RAM памет и колко ядра може да използва виртуалната машина на WSL.
Относно производителността на файловата система, За предпочитане е да се работи в рамките на вграденото хранилище на дистрибуцията. За големи проекти и хранилища с код. Достъп до папки на Windows под /mnt Работи добре за специфични задачи, но в сценарии с милиони файлове или много I/O операции може да бъде значително по-бавен от WSL1.
И въпреки че може да изглежда очевидно, струва си да се помни, че Преди да правите сериозни промени или рисковани тестове, препоръчително е да имате резервни копия на най-важните си данни.особено ако ще работите със скриптове, контейнери или инструменти на ниско ниво в Linux среда.
Често срещани грешки при инсталиране на WSL2 и как да ги поправим
По време на инсталирането или конфигурирането на WSL2 може да се появи следното доста често срещани грешки, които често се повтарят сред потребителитеПознаването им предварително може да ви спести време и разочарование.
Една от най-типичните грешки е грешка 0x8007019eТова обикновено показва, че подсистемата WSL не е активирана правилно. Решението е да изпълните отново командата за активиране на функциите на WSL, използвайки DISM или от „Включване или изключване на функциите на Windows“, и след това да рестартирате.
Друг често срещан случай е да видите съобщение, което гласи, че WSL2 се нуждае от актуализация на компонентите на ядротоТова обикновено се решава чрез изтегляне на най-новия пакет за актуализация на ядрото на Linux за WSL от уебсайта на Microsoft и ръчното му инсталиране.
Грешките 0x80370102 и 0x80070003 може да са свързани с деактивирана виртуализация Възможно е да е неправилно конфигурирано или хранилището по подразбиране на Windows да е на друго устройство. В първия случай ще трябва да влезете в BIOS и да активирате виртуализацията; във втория проверете в Настройки > Система > Памет къде се запазват новите приложения и го променете, ако е необходимо.
Когато инсталацията на дистрибуцията не завърши успешно, препоръчително е да проверите Официалното ръководство за отстраняване на проблеми с WSL, където Microsoft описва много от тези кодове за грешки и предлага конкретни стъпки за разрешаването им, включително специални случаи на инсталации на Windows Server или Core.
Ако проблемът ви е, че командата wsl --install Не съществува или е дефектно, вероятно е така Вашата версия на Windows може да е твърде стара, за да поддържа този опростен методСледователно, ще трябва да следвате пътя на ръчна инсталация, като активирате WSL и платформата за виртуални машини, инсталирате ядрото и след това добавите дистрибуциите една по една.
Като цяло, отделете време, за да прегледате изискванията за версиите, виртуализацията и активираните функции. Обикновено отстранява повечето грешки, без да е необходимо да се предприемат драстични мерки.И след като WSL2 стартира правилно, той се държи доста стабилно.
WSL2 се е утвърдил като много мощно решение за тези, които трябва да комбинират световете на Windows и Linux на една и съща машина, и с горните стъпки и препоръки би трябвало да можете да го инсталирате, конфигурирате и използвате ежедневно с лекота, възползвайки се от неговите предимства по отношение на производителност, съвместимост и продуктивност, без да изпадате в типичните проблеми на традиционните виртуални машини.