- WSL2 integron shpërndarjet reale të Linux-it në Windows, me një bërthamë të plotë dhe mbështetje të plotë për thirrjet e sistemit.
- Instalimi thjeshtohet me wsl --install, i cili aktivizon komponentët, instalon kernelin dhe konfiguron Ubuntu si parazgjedhje.
- Kombinimi i WSL2, Windows Terminal dhe VS Code lejon një mjedis zhvillimi që është pothuajse identik me atë të prodhimit.
- WSL2 përmirëson shumë përdorimin e Docker, bazave të të dhënave dhe mjeteve Linux, duke ruajtur komoditetin e desktopit të Windows.
Nëse programoni në Windows, por instaloni në servera Linux, ndoshta keni hasur më shumë se një herë probleme me ndryshimet në mjedis, libraritë që dështojnë vetëm në prodhim ose Docker që funksionon në mënyrë të çrregullt. WSL u krijua pikërisht për të shmangur atë makth, dhe me WSL2 Microsoft më në fund e ka gjetur zgjidhjen e duhur: një Linux pothuajse vendas, i integruar në Windows dhe pa pasur nevojë të konfiguroni një makinë virtuale të rëndë.
Ky është tashmë opsioni i preferuar për mijëra zhvillues sepse ju lejon të hapni një terminal Ubuntu, Debian ose Kali brenda Windows 10 ose 11, të ekzekutoni komanda, Docker, baza të dhënash ose mjete të linjës së komandës sikur të ishit në një server Linux, por pa hequr dorë nga aplikacionet dhe lojërat tuaja të Windows. Le të shohim se si funksionon, si ta instaloni, si ndryshon nga WSL1 dhe si ta përfitoni sa më shumë nga ai në punën tuaj të përditshme.
Çfarë është WSL dhe pse e ndryshon jetën e një zhvilluesi të Windows?
WSL është shkurtesa për Nënsistemi i Windows për LinuxNënsistemi që ju lejon të ekzekutoni shpërndarjet GNU/Linux brenda Windows pa pasur nevojë për një makinë virtuale tradicionale ose nisje të dyfishtë. Mund të instaloni Ubuntu, Debian, Kali, openSUSE, Arch (duke përdorur appx) ose shpërndarje të tjera dhe të përdorni mjetet e tyre të konsolës direkt nga desktopi juaj i Windows.
Ndryshe nga WSL1, WSL2 Përdor një kernel të vërtetë Linux Funksionon në një makinë virtuale të lehtë të menaxhuar nga Windows (Hyper-V dhe platforma e makinës virtuale), me mbështetje të plotë për thirrjet e sistemit ELF64. WSL1 ishte një shtresë përkthimi sistemi, e shpejtë për detyra të caktuara, por me kufizime serioze në përputhshmëri, veçanërisht me mjete si Docker.
Për zhvilluesit e uebit, zhvilluesit e backend-it, DevOps ose specialistët e të dhënave, kjo do të thotë që ju mundeni duke punuar në një mjedis pothuajse identik me mjedisin e prodhimit (që në shumicën e rasteve është Linux), duke përdorur të njëjtat biblioteka, menaxherë të bazave të të dhënave, radhë, servera mesazhesh, etj., pa braktisur Windows-in. Shprehja klasike "funksionon në makinën time" është një gjë e së kaluarës sepse ju zhvilloni në Windows dhe shpërndani në një shpërndarje krejtësisht të ndryshme Linux.
WSL2 nuk është një desktop grafik i plotë Linux. Ngjashëm me një makinë virtuale GNOME ose KDE, ndërfaqja kryesore është terminali. Megjithatë, në ditët e sotme mund të ekzekutoni edhe aplikacione Linux GUI mbi WSL2, dhe madje të përfitoni nga përshpejtimi i GPU-së për ngarkesa pune si mësimi automatik ose grafika e përparuar. Nëse keni nevojë të qaseni në aplikacione nga distanca, mund ta konfiguroni. Desktopi i largët i Chrome në Windows.
Windows vs Linux: problemi klasik i mjedisit të zhvillimit
Windows mbetet sistemi operativ më i instaluar në kompjuterët desktopNdërsa shumica e vendosjeve të aplikacioneve të prodhimit bëhen në Linux, ky dualitet ka krijuar gjithmonë një përplasje për zhvilluesit që punojnë në Windows, por mirëmbajnë ose vendosin aplikacione në serverat Linux.
Përdoruesit e macOS tradicionalisht kanë përjetuar më pak fërkime Sepse macOS ndan një themel të ngjashëm me Unix-in dhe shumë mjete sillen në mënyrë të ngjashme me Linux-in. Kjo ishte një nga arsyet pse kaq shumë zhvillues migruan në Mac vite më parë: ata po kërkonin një terminal të mirë dhe mjedise më afër prodhimit.
Pika e madhe e kthesës erdhi me DockerKontejnerët u bënë thelbësorë për zhvillimin dhe vendosjen, por në Windows, performanca dhe përvoja e përdoruesit ishin mjaft të dobëta, me shtresa të pajtueshmërisë joefikase. WSL2 zgjidh shumë nga këto probleme, duke ofruar një mjedis ku Docker funksionon shumë më mirë.
WSL1 vs WSL2: ndryshimet dhe pse duhet të përdorni versionin 2
WSL ekziston në dy versione kryesore: WSL1 dhe WSL2Edhe pse të dyja ju lejojnë të përdorni Linux në Windows, arkitektura ka ndryshuar shumë nga njëri në tjetrin, dhe kjo është e dukshme në performancë dhe kompatibilitet.
- WSL1 përkthen thirrjet e sistemit Linux në kernelin e Windows. Kjo rezulton në kohë shumë të shpejta nisjeje dhe integrim të mirë të skedarëve, por ka përputhshmëri të kufizuar me disa aplikacione, veçanërisht ato që kanë nevojë për një kernel të vërtetë Linux, siç janë motorë të caktuar të bazave të të dhënave ose Docker që funksionon me kapacitet të plotë.
- WSL2 përdor një makinë virtuale të lehtë me një kernel të plotë Linux.Menaxhohet nga Windows. Ofron përputhshmëri të plotë me thirrjet e sistemit, performancë të përmirësuar të sistemit të skedarëve (veçanërisht në vetë sistemin e skedarëve Linux) dhe mundëson veçori të përparuara si Docker nativ në WSL2 dhe qasje të drejtpërdrejtë në kernel.
- Të dy versionet ndajnë disa veçoriPërparësitë e tij përfshijnë integrimin me Windows, kohë të shpejta nisjeje, përputhshmëri me mjetet e virtualizimit si VMWare ose VirtualBox (në versionet e fundit) dhe mbështetje për shpërndarje të shumëfishta. Megjithatë, vetëm WSL2 ofron një kernel të plotë Linux dhe mbështetje të plotë për thirrjet e sistemit.
Të gjitha sa më sipër, Opsioni i rekomanduar sot është përdorimi i WSL2Përveç nëse keni një arsye shumë specifike për të qëndruar me WSL1. Docker Desktop, për shembull, është projektuar për t'u integruar me WSL2, dhe shumë udhëzues dhe mjete moderne tashmë e marrin këtë version si standard.

Kërkesat për instalimin e WSL2 në Windows 10 dhe Windows 11
Për të përdorur WSL2 ju nevojitet një version relativisht i fundit i Windows. Në përgjithësi, duhet të përmbushni këto kushte:
- Windows 10 versioni 2004 ose më i ri (ndërtimi 19041+) për të përdorur komandën e thjeshtuar
wsl --install. - Për WSL2 konkretisht, Windows 10 versioni 1903, ndërtimi 18362 ose më i lartëose Windows 11.
- Arkitektura 64-bitësheWSL2 nuk është i disponueshëm në Windows 10 32-bit.
Përveç kësaj, Duhet të siguroheni që virtualizimi është aktivizuar në BIOS. të ekipit tuaj. Nëse nuk është kështu, mund të hasni gabime të tilla si 0x80370102Këto mesazhe zakonisht tregojnë se virtualizimi i harduerit nuk është aktiv. Hyni në BIOS/UEFI, kërkoni opsionet që lidhen me CPU-në ose "Teknologjinë e Virtualizimit" dhe aktivizojeni atë.
Instaloni WSL2 nga e para duke përdorur komandën wsl –install
Në versionet moderne të Windows 10 dhe Windows 11, instalimi është thjeshtuar shumë: kërkon vetëm një komandë dhe një rinisje.
1. Hapni PowerShell si administratorKërko për “PowerShell” në menynë Start, kliko me të djathtën dhe zgjidh “Run as administrator”. Prano kërkesën e Kontrollit të Llogarisë së Përdoruesit (UAC) nëse shfaqet.
2. Ekzekutoni komandën e plotë të instalimit:
Komanda: wsl --install
Kjo komandë trajton disa hapa të brendshëm pa pasur nevojë të prekni asgjë tjetër:
- Aktivizoni përbërësit opsionalë të nevojshëm: Nënsistemi i Windows për Linux y Platforma e makinës virtuale.
- Shkarkoni dhe instaloni kerneli më i fundit i Linux-it për WSL.
- Konfiguro WSL2 si versioni i parazgjedhur.
- Shkarkoni dhe instaloni një shpërndarje të parazgjedhur të Linux-it (zakonisht Ubuntu).
3. Rinisni kompjuterin tuaj kur Windows ju kërkon ta bëni këtë.Kjo është thelbësore që veçoritë e aktivizuara rishtazi të bëhen funksionale.
4. Në nisjen e parë të shpërndarjes Linux (Ubuntu, përveç nëse specifikoni ndryshe), do të hapet një dritare konsole ku nxirren skedarët. Herën e parë zgjat pak më shumë; nisjet pasuese zakonisht janë pothuajse të menjëhershme.
Zgjedhja dhe ndryshimi i shpërndarjes Linux në WSL
- Si parazgjedhje, komanda
wsl --installzakonisht instalon Ubuntu si shpërndarja parazgjedhur. Megjithatë, mund të zgjidhni një shpërndarje të ndryshme si gjatë ashtu edhe pas instalimit. - Për të parë listën e shpërndarjeve të disponueshme në internetHapni PowerShell dhe shkruani:
- Lista:
wsl.exe --list --online - Për të instaluar një shpërndarje specifike nga konzola, përdorni opsionin
-dduke treguar emrin tuaj: - Instaloni shpërndarjen:
wsl.exe --install -d NombreDeLaDistro - Nëse doni të ndryshoni shpërndarjen e parazgjedhur (ai që hapet kur thjesht vrapon)
wsl), mund të bëni: - Parazgjedhur:
wsl.exe --set-default NombreDeLaDistro - Dhe nëse doni të lançoni vetëm një shpërndarje specifike në një rast të vetëm Pa ndryshuar parazgjedhjen, përdorni:
- Nisja në kohë:
wsl.exe --distribution NombreDeLaDistro
Përveç shpërndarjeve të Microsoft Store, Është e mundur të importohen shpërndarje të personalizuara nga një skedar TAR ose të instalohen paketa .appx në disa rastesiç është Arch Linux. Madje mund të krijoni imazhet tuaja të personalizuara WSL për të standardizuar mjediset brenda një kompanie.

Konfiguroni emrin e përdoruesit dhe fjalëkalimin tuaj të Linux në WSL
Herën e parë që hapni shpërndarjen tuaj Linux të instaluar me WSLDo t'ju kërkohet të krijoni një emër përdoruesi dhe fjalëkalim UNIX. Kjo llogari do të jetë përdoruesi i parazgjedhur për atë shpërndarje.
Mbani në mend disa detaje të rëndësishme rreth këtij përdoruesi:
- Nuk është i lidhur me llogarinë tuaj të përdoruesit të Windows.; mund ta bësh emrin (dhe kjo rekomandohet) ndryshe.
- Kur shkruani fjalëkalimin, asgjë nuk do të shfaqet në ekran. (Pa yllëza). Kjo njihet si hyrje "e verbër", e cila është krejtësisht normale në Linux.
- Ky përdorues konsiderohet administrator në atë shpërndarje. dhe mund të përdorë
sudopër të ekzekutuar komanda me privilegje të larta. - Çdo shpërndarje ka grupin e vet të përdoruesve dhe fjalëkalimet; nëse shtoni një shpërndarje të re, do t'ju duhet të përsërisni procesin e krijimit të llogarisë.
Nëse ju pëlqen ndrysho fjalëkalimin Tjetra, hapni shpërndarjen dhe ekzekutoni: Ndrysho fjalëkalimin: passwd
Nëse keni harruar fjalëkalimin e një përdoruesi për shpërndarjen Por nëse ende keni akses administratori në Windows, mund ta rifitoni kontrollin si më poshtë:
- Hapni një Command Prompt ose PowerShell si administrator dhe hyni si root në shpërndarjen e parazgjedhur:
wsl -u root
Për një shpërndarje specifike:
wsl -d NombreDistro -u root - Brenda atij terminali rrënjësor, drejtuar:
passwd nombre_usuariodhe vendosni fjalëkalimin e ri. - Dil nga WSL me
exitdhe hyni përsëri normalisht me llogarinë e përdoruesit të rikuperuar.
Mënyra për të nisur dhe përdorur shpërndarjet tuaja Linux në Windows
Pasi të keni instaluar disa distroMund t’i hapni në mënyra të ndryshme, varësisht nga ajo që është më e përshtatshme për ju në çdo kohë të caktuar.
- Terminali i Windows (i rekomanduar). Windows Terminal është emulatori modern i terminalit i Microsoft-it. Sa herë që instaloni një shpërndarje të re Linux në WSL, në Windows Terminal shfaqet një profil i ri, të cilin mund ta personalizoni (ikona, skema e ngjyrave, komanda e nisjes, etj.). Është mënyra më e përshtatshme për të punuar me shumë rreshta komandash njëkohësisht.
- Nga menyja Start. Mund të shkruani emrin e shpërndarjes (“Ubuntu”, “Debian”, “Kali Linux”…). Klikimi mbi të do ta hapë atë direkt në dritaren e vet të konsolës.
- Nga PowerShell ose CMD. Mund ta shkruash direkt emrin e shpërndarjes (për shembull,
ubuntu) ose përdorni komandën gjenerike:
wslpër të hyrë në shpërndarjen e parazgjedhur, ose
wsl -d NombreDistropër të futur një të caktuar. - Ekzekutoni një komandë specifike Linux nga Windows. Përdorni sintaksën:
wsl
Për shembull:wsl ls -la,wsl pwd,wsl dateetj. Në këtë mënyrë ju përzieni komandat e Windows dhe Linux në të njëjtën linjë.

Windows Terminal: shoqëruesi perfekt për WSL2
Për të përfituar sa më shumë nga WSL2, ia vlen ta instaloni Terminali i Windows-it nga Microsoft Store. Është shumë më i përshtatshëm dhe më i fuqishëm se Command Prompt klasik apo edhe dritarja standarde e PowerShell.
Terminali i Windows lejon krijoni profile për secilën shpërndarjePërcaktoni se cili terminal hapet si parazgjedhje (PowerShell, CMD, Ubuntu, etj.), përdorni skeda, panele të ndara, tema me ngjyra të ndryshme, fonte të personalizuara, imazhe sfondi dhe shkurtore të përparuara të tastierës.
Për shumë zhvillues në WindowsWindows Terminal + WSL2 është kombinimi që i afrohet më shumë përvojës së punës së një sistemi Linux vendas ose një macOS me një terminal të përparuar, pa dalë nga mjedisi juaj i zakonshëm i Windows.
Konfigurimi i mjedisit tuaj të zhvillimit: VS Code, Visual Studio, Git dhe bazat e të dhënave
Pasi WSL2 të jetë në funksion, hapi tjetër logjik është integroni redaktorin ose IDE-në tuaj të preferuar me atë mjedis. Microsoft ka bërë shumë përpjekje që Visual Studio Code dhe Visual Studio të funksionojnë në mënyrë të përsosur me WSL.
Kodi VS
Idealisht, duhet të instaloni Paketa e Zhvillimit në DistancëKy zgjerim ju lejon të hapni një dosje të vendosur në WSL sikur të ishte një projekt lokal, por që ekzekuton serverin VS Code brenda shpërndarjes. Thjesht shkruani:
code .
Nga terminali WSL, në dosjen e projektit tuaj, VS Code do të hapë atë shteg "të largët" me të gjithë ekosistemin e tij: zgjerime, debugging, terminal të integruar, etj., por që në të vërtetë funksionon kundër Linux.
Studio Vizuale
Ju lejon të konfiguroni WSL si objektiv për projektet C++ duke përdorur CMake. Ju mund të kompiloni dhe debugoni në Windows, WSL ose makina të largëta, duke e ndryshuar objektivin nga vetë IDE-ja.
Lidhur me kontrollin e versioneve, përdorimi i Git brenda WSL është po aq i thjeshtë sa instalimi i tij me menaxherin e paketave të shpërndarjes suaj (për shembull, sudo apt install git (në Ubuntu) dhe konfiguroni kredencialet, skedarët e përjashtimit, mbaresat e rreshtave, etj. Gjithashtu mund të përdorni Menaxherin e Kredencialeve të Windows për të integruar autentifikimin.
Konfigurimi i bazave të të dhënave në WSL (MySQL, PostgreSQL, MongoDB, Redis, SQL Server, SQLite, etj.) është shumë e ngjashme me bërjen e saj në çdo server Linux. Ju mund të filloni shërbimet brenda shpërndarjes ose të përdorni kontejnerë Docker në WSL2, dhe pastaj të lidhni aplikacionet tuaja nga Windows ose nga vetë WSL, varësisht nga nevojat tuaja.
Menaxhimi i disqeve të jashtme, GUI-t dhe kopjeve rezervë të shpërndarjeve
WSL2 gjithashtu lejon montoni disqe të jashtme ose pajisje USB direkt në mjedisin Linux. Ekziston dokumentacion specifik për montimin e disqeve me komandën wsl --mountKjo ju jep shumë fleksibilitet kur punoni me të dhëna që keni në njësi të tjera.
Nëse ju pëlqen ekzekutoni aplikacione grafike Linux (GUI) brenda WSL2 tani është i mundur falë mbështetjes së Microsoft për aplikacionet GUI. Kjo ju lejon të hapni redaktorë grafikë, mjete dizajni ose mjedise të lehta desktopi pa pasur nevojë të nisni një makinë virtuale tradicionale.
Për të bërë kopje rezervë ose zhvendosja e një shpërndarjeje të plotë në një kompjuter tjetërWSL përfshin dy komanda shumë të dobishme:
- Eksporto një shpërndarje:
wsl --export NombreDistro backup-wsl.tar
Kjo gjeneron një skedar TAR me të gjithë sistemin e tij të skedarëve. - Importo një shpërndarje:
wsl --import NombreDistro C:\ruta\destino backup-wsl.tar --version 2
Kjo e rikthen atë shpërndarje me të gjithë përmbajtjen e saj në një shteg tjetër dhe, nëse dëshironi, siguron që të përdorë WSL2.
Ky mekanizëm eksporti/importi është shumë i përshtatshëm për klonimin e mjediseve të zhvillimit, ndarjen e tyre me kolegët ose thjesht mbajtjen e një kopjeje rezervë sigurie përpara se të bëhen ndryshime të mëdha.
WSL2 është vendosur si mjedisi kryesor i zhvillimit. Për shumë përdorues të Windows që nuk duan të heqin dorë nga lojërat, përdorimi i softuerëve specifikë ose rrjedha e punës në këtë sistem, por që kanë nevojë për një mjedis të vërtetë Linux për programim, provimi i WSL2 mund të jetë një ndryshim rrënjësor për mënyrën se si punoni.
Redaktor i specializuar në çështjet e teknologjisë dhe internetit me më shumë se dhjetë vjet përvojë në media të ndryshme dixhitale. Unë kam punuar si redaktor dhe krijues i përmbajtjes për kompanitë e tregtisë elektronike, komunikimit, marketingut online dhe reklamave. Kam shkruar gjithashtu në faqet e internetit të ekonomisë, financave dhe sektorëve të tjerë. Puna ime është edhe pasioni im. Tani, përmes artikujve të mi në Tecnobits, Përpiqem të eksploroj të gjitha të rejat dhe mundësitë e reja që bota e teknologjisë na ofron çdo ditë për të përmirësuar jetën tonë.
