- Isinasama ng WSL2 ang mga tunay na distribusyon ng Linux sa Windows, na may buong kernel at suporta sa buong system call.
- Ang pag-install ay pinasimple gamit ang wsl --install, na nagbibigay-daan sa mga bahagi, pag-install ng kernel, at pag-configure ng Ubuntu bilang default.
- Ang kumbinasyon ng WSL2, Windows Terminal, at VS Code ay nagbibigay-daan para sa isang development environment na halos magkapareho sa produksyon.
- Lubos na pinapabuti ng WSL2 ang paggamit ng Docker, mga database, at mga tool sa Linux, habang pinapanatili ang kaginhawahan ng Windows desktop.
Kung nag-program ka sa Windows ngunit nag-deploy sa mga server ng Linux, malamang na nahirapan ka nang higit sa isang beses sa mga pagkakaiba sa kapaligiran, mga library na nabigo lamang sa produksyon, o ang Docker na tumatakbo nang mali. Ang WSL ay nilikha nang eksakto upang maiwasan ang bangungot na iyon, at kasama WSL2 Sa wakas ay natamaan na ng Microsoft ang ulo: isang malapit sa katutubong Linux, na isinama sa Windows at nang hindi kinakailangang mag-set up ng mabigat na virtual machine.
Ito na ang ginustong opsyon para sa libu-libong developer dahil pinapayagan ka nitong magbukas ng Ubuntu, Debian, o Kali terminal sa loob ng Windows 10 o 11, magpatakbo ng mga command, Docker, database, o command-line tool na parang nasa isang Linux server ka, ngunit nang hindi isuko ang iyong mga application at laro sa Windows. Tingnan natin kung paano ito gumagana, kung paano i-install ito, kung paano ito naiiba sa WSL1, at kung paano masulit ito sa iyong pang-araw-araw na trabaho.
Ano ang WSL at bakit nito binabago ang buhay ng isang developer ng Windows?
WSL ay ang akronim para sa Windows Subsystem para sa LinuxAng subsystem na nagpapahintulot sa iyo na magpatakbo ng mga distribusyon ng GNU/Linux sa loob ng Windows nang hindi nangangailangan ng tradisyonal na virtual machine o dual booting. Maaari mong i-install ang Ubuntu, Debian, Kali, openSUSE, Arch (gamit ang appx), o iba pang mga distribusyon at gamitin ang kanilang mga console tool nang direkta mula sa iyong Windows desktop.
Hindi tulad ng WSL1, WSL2 Gumagamit ito ng totoong Linux kernel Gumagana ito sa isang magaan na virtual machine na pinamamahalaan ng Windows (Hyper-V at ang virtual machine platform), na may buong suporta para sa ELF64 system call. Ang WSL1 ay isang layer ng pagsasalin ng system, mabilis para sa ilang mga gawain ngunit may malubhang limitasyon sa pagiging tugma, lalo na sa mga tool tulad ng Docker.
Para sa mga web developer, backend developer, DevOps o data specialist, nangangahulugan ito na kaya mo nagtatrabaho sa isang kapaligiran na halos magkapareho sa kapaligiran ng produksyon (na sa karamihan ng mga kaso ay Linux), gamit ang parehong mga aklatan, mga tagapamahala ng database, mga pila, mga server ng pagmemensahe, atbp., nang hindi iniiwan ang Windows. Ang klasikong "ito ay gumagana sa aking makina" ay isang bagay ng nakaraan dahil nagde-develop ka sa Windows at nag-deploy sa isang ganap na naiibang pamamahagi ng Linux.
Ang WSL2 ay hindi isang ganap na graphical desktop ng Linux Katulad ng isang GNOME o KDE VM, ang pangunahing interface ay ang terminal. Gayunpaman, sa ngayon ay maaari ka ring magpatakbo ng mga Linux GUI application sa ibabaw ng WSL2, at kahit na samantalahin ang GPU acceleration para sa mga workload tulad ng machine learning o advanced graphics. Kung kailangan mong i-access ang mga application nang malayuan, maaari mong i-configure Remote Desktop ng Chrome sa Windows.
Windows vs Linux: ang klasikong problema sa kapaligiran ng pag-unlad
Ang Windows ay nananatiling pinaka-install na operating system sa mga desktop computerBagama't ang karamihan sa mga pag-deploy ng application ng produksyon ay ginagawa sa Linux, ang duality na ito ay palaging lumikha ng isang sagupaan para sa mga developer na nagtatrabaho sa Windows ngunit nagpapanatili o nag-deploy ng mga application sa mga server ng Linux.
Ang mga gumagamit ng macOS ay tradisyonal na nakaranas ng mas kaunting alitan Dahil ang macOS ay nagbabahagi ng isang pundasyong tulad ng Unix, at maraming mga tool ang kumikilos nang katulad sa Linux. Iyon ang isa sa mga dahilan kung bakit maraming developer ang lumipat sa Mac mga taon na ang nakakaraan: naghahanap sila ng isang disenteng terminal at mga kapaligiran na mas malapit sa produksyon.
Dumating ang malaking turning point Manggagawa sa pantalanNaging mahalaga ang mga container para sa pag-develop at pag-deploy, ngunit sa Windows, ang pagganap at karanasan ng user ay medyo mahirap, na may hindi mahusay na mga layer ng compatibility. Nilulutas ng WSL2 ang marami sa mga problemang ito, na nag-aalok ng kapaligiran kung saan mas mahusay na gumagana ang Docker.
WSL1 vs WSL2: mga pagkakaiba at kung bakit dapat mong gamitin ang bersyon 2
Ang WSL ay umiiral sa dalawang pangunahing bersyon: WSL1 at WSL2Bagama't pareho kang nagpapahintulot sa iyo na patakbuhin ang Linux sa Windows, ang arkitektura ay nagbago nang malaki mula sa isa hanggang sa isa, at iyon ay kapansin-pansin sa pagganap at pagiging tugma.
- Ang WSL1 ay nagsasalin ng mga tawag sa sistema ng Linux sa Windows kernel. Nagreresulta ito sa napakabilis na oras ng pag-boot at mahusay na pagsasama ng file, ngunit ito ay may limitadong compatibility sa ilang mga application, lalo na sa mga nangangailangan ng isang tunay na Linux kernel, tulad ng ilang mga database engine o Docker na tumatakbo sa buong kapasidad.
- Gumagamit ang WSL2 ng magaan na virtual machine na may buong Linux kernel.Pinamamahalaan ng Windows. Nag-aalok ito ng buong compatibility sa mga system call, pinahusay na pagganap ng file system (lalo na sa Linux file system mismo), at nagbibigay-daan sa mga advanced na feature gaya ng native Docker sa WSL2 at direktang kernel access.
- Ang parehong mga bersyon ay nagbabahagi ng ilang mga tampokKasama sa mga bentahe nito ang pagsasama sa Windows, mabilis na oras ng pag-boot, pagiging tugma sa mga tool sa virtualization tulad ng VMWare o VirtualBox (sa mga kamakailang bersyon), at suporta para sa maraming distribusyon. Gayunpaman, ang WSL2 lang ang nagtatampok ng buong Linux kernel at kumpletong suporta sa system call.
Lahat ng nabanggit, Ang inirerekomendang opsyon ngayon ay ang paggamit ng WSL2Maliban kung mayroon kang isang napaka-tiyak na dahilan upang manatili sa WSL1. Ang Docker Desktop, halimbawa, ay idinisenyo upang isama sa WSL2, at maraming mga modernong gabay at tool ang nagpapalagay sa bersyong ito bilang pamantayan.

Mga kinakailangan para sa pag-install ng WSL2 sa Windows 10 at Windows 11
Upang magamit ang WSL2 kailangan mo ng isang relatibong kamakailang bersyon ng Windows. Sa pangkalahatan, dapat mong matugunan ang mga kundisyong ito:
- Windows 10 na bersyon 2004 o mas bago (build 19041+) upang gamitin ang pinasimpleng utos
wsl --install. - Para sa WSL2 partikular, Windows 10 na bersyon 1903, bumuo ng 18362 o mas mataaso Windows 11.
- 64-bit na arkitekturaHindi available ang WSL2 sa 32-bit na Windows 10.
Bukod dito, Dapat mong tiyakin na ang virtualization ay pinagana sa BIOS ng iyong koponan. Kung hindi, maaari kang makatagpo ng mga error tulad ng 0x80370102Ang mga mensaheng ito ay karaniwang nagpapahiwatig na ang virtualization ng hardware ay hindi aktibo. Ipasok ang BIOS/UEFI, hanapin ang mga opsyon na nauugnay sa CPU o "Virtualization Technology," at paganahin ito.
I-install ang WSL2 mula sa simula gamit ang command na wsl –install
Sa mga modernong bersyon ng Windows 10 at Windows 11, ang pag-install ay lubos na pinasimple: nangangailangan lamang ito ng isang command at isang restart.
1. Buksan ang PowerShell bilang administratorHanapin ang "PowerShell" sa Start menu, i-right-click, at piliin ang "Run as administrator." Tanggapin ang prompt ng User Account Control (UAC) kung lalabas ito.
2. Patakbuhin ang kumpletong utos sa pag-install:
Command: wsl --install
Ang utos na ito ay humahawak ng ilang mga panloob na hakbang nang hindi mo kailangang hawakan ang anupaman:
- I-activate ang mga kinakailangang opsyonal na bahagi: Windows subsystem para sa Linux y Platform ng virtual machine.
- I-download at i-install ang pinakabagong Linux kernel para sa WSL.
- I-configure WSL2 bilang default na bersyon.
- Mag-download at mag-install ng default na pamamahagi ng Linux (karaniwan Ubuntu).
3. I-restart ang iyong computer kapag sinenyasan ka ng Windows na gawin ito.Ito ay mahalaga para sa mga bagong pinaganang feature para maging operational.
4. Sa unang boot ng pamamahagi ng Linux (Ubuntu, maliban kung tinukoy mo kung hindi man), magbubukas ang isang console window kung saan kinukuha ang mga file. Ang unang pagkakataon ay tumatagal ng kaunti pa; ang mga kasunod na pagsisimula ay kadalasang halos madalian.
Pagpili at pagbabago ng pamamahagi ng Linux sa WSL
- Bilang default, ang command
wsl --installkaraniwang nag-i-install ng Ubuntu bilang default na pamamahagi. Gayunpaman, maaari kang pumili ng ibang pamamahagi sa panahon at pagkatapos ng pag-install. - Upang makita ang listahan ng mga pamamahagi na magagamit onlineBuksan ang PowerShell at i-type ang:
- Listahan:
wsl.exe --list --online - Upang mag-install ng isang partikular na pamamahagi mula sa console, gamitin ang opsyon
-dna nagpapahiwatig ng iyong pangalan: - I-install ang distro:
wsl.exe --install -d NombreDeLaDistro - Kung gusto mong baguhin ang default na distro (yung bubukas kapag tumakbo ka lang
wsl), magagawa mo: - Default:
wsl.exe --set-default NombreDeLaDistro - At kung gusto mo lang maglunsad ng isang partikular na pamamahagi sa isang one-off na batayan Nang hindi binabago ang default, gamitin ang:
- Ilunsad sa oras:
wsl.exe --distribution NombreDeLaDistro
Bilang karagdagan sa mga pamamahagi ng Microsoft Store, Posibleng mag-import ng mga custom na distribusyon mula sa isang TAR file o mag-install ng mga package .appx sa ibang Pagkakataontulad ng Arch Linux. Maaari ka ring lumikha ng iyong sariling mga custom na WSL na imahe upang i-standardize ang mga kapaligiran sa loob ng isang kumpanya.

I-configure ang iyong Linux username at password sa WSL
Sa unang pagkakataon na buksan mo ang iyong Linux distribution na naka-install sa WSLIpo-prompt kang lumikha ng UNIX username at password. Ang account na ito ang magiging default na user para sa pamamahaging iyon.
Tandaan ang ilang mahahalagang detalye tungkol sa user na ito:
- Hindi ito naka-link sa iyong Windows user account.; maaari mong (at ito ay inirerekomenda) na gawing iba ang pangalan.
- Kapag nag-type ka ng password, walang ipapakita sa screen. (Walang mga asterisk). Ito ay kilala bilang "bulag" na input, na perpektong normal sa Linux.
- Ang user na ito ay itinuturing na isang administrator sa distro na iyon at magagamit
sudoupang magsagawa ng mga utos na may mataas na mga pribilehiyo. - Ang bawat pamamahagi ay may sariling hanay ng mga gumagamit at mga password; kung magdagdag ka ng bagong distro, kailangan mong ulitin ang proseso ng paggawa ng account.
Kung nais mong palitan ang password Susunod, buksan ang pamamahagi at patakbuhin: Palitan ANG password: passwd
Kung nakalimutan mo ang password ng isang user para sa distro Ngunit kung mayroon ka pa ring administrator access sa Windows, maaari mong mabawi ang kontrol tulad nito:
- Magbukas ng Command Prompt o PowerShell bilang administrator at mag-log in bilang ugat sa default na distro:
wsl -u root
Para sa isang partikular na distro:
wsl -d NombreDistro -u root - Sa loob ng root terminal na iyon, patakbuhin:
passwd nombre_usuarioat itakda ang bagong password. - Mag-log out sa WSL sa
exitat mag-log in nang normal gamit ang na-recover na user account.
Mga paraan upang mag-boot at gamitin ang iyong mga pamamahagi ng Linux sa Windows
Kapag naka-install ka na ng ilang distroMaaari mong buksan ang mga ito sa iba't ibang paraan, depende sa kung ano ang pinaka-maginhawa para sa iyo sa anumang oras.
- Windows Terminal (inirerekomenda). Ang Windows Terminal ay ang modernong terminal emulator ng Microsoft. Sa tuwing mag-i-install ka ng bagong pamamahagi ng Linux sa WSL, may lalabas na bagong profile sa Windows Terminal, na maaari mong i-customize (icon, color scheme, startup command, atbp.). Ito ang pinaka-maginhawang paraan upang gumana sa maraming command line nang sabay-sabay.
- Mula sa Start menu. Maaari mong i-type ang pangalan ng pamamahagi (“Ubuntu”, “Debian”, “Kali Linux”…). Ang pag-click dito ay direktang bubuksan ito sa sarili nitong console window.
- Mula sa PowerShell o CMD. Maaari mong direktang i-type ang pangalan ng distro (halimbawa,
ubuntu) o gamitin ang generic na utos:
wslupang ipasok ang default na distro, o
wsl -d NombreDistroupang magpasok ng isang tiyak. - Magsagawa ng isang partikular na utos ng Linux mula sa Windows. Gamitin ang syntax:
wsl
Por ejemplo:wsl ls -la,wsl pwd,wsl dateat iba pa. Sa ganitong paraan, paghaluin mo ang mga utos ng Windows at Linux sa parehong pipeline.

Windows Terminal: ang perpektong kasama para sa WSL2
Upang masulit ang WSL2, sulit itong i-install Windows Terminal mula sa Microsoft Store. Ito ay mas maginhawa at makapangyarihan kaysa sa klasikong Command Prompt o maging ang default na PowerShell window.
Pinapayagan ng Windows Terminal lumikha ng mga profile para sa bawat distroTukuyin kung aling terminal ang bubukas bilang default (PowerShell, CMD, Ubuntu, atbp.), gumamit ng mga tab, split panel, iba't ibang kulay na tema, custom na font, larawan sa background, at advanced na mga keyboard shortcut.
Para sa maraming mga developer sa WindowsAng Windows Terminal + WSL2 ay ang kumbinasyong pinakamalapit sa karanasan sa pagtatrabaho ng isang native na Linux system o isang macOS na may advanced na terminal, nang hindi umaalis sa iyong karaniwang kapaligiran sa Windows.
Pagse-set up ng iyong development environment: VS Code, Visual Studio, Git, at mga database
Kapag ang WSL2 ay gumagana at tumatakbo, ang susunod na lohikal na hakbang ay isama ang iyong paboritong editor o IDE kasama ang kapaligirang iyon. Ang Microsoft ay naglagay ng maraming pagsisikap sa paggawa ng Visual Studio Code at Visual Studio nang perpekto sa WSL.
VS Code
Sa isip, dapat mong i-install ang Remote Development PackBinibigyang-daan ka ng extension na ito na magbukas ng folder na matatagpuan sa WSL na parang isang lokal na proyekto, ngunit pinapatakbo ang server ng VS Code sa loob ng pamamahagi. I-type lang:
code .
Mula sa terminal ng WSL, sa iyong folder ng proyekto, bubuksan ng VS Code ang "remote" na landas kasama ang buong ecosystem nito: mga extension, pag-debug, integrated terminal, atbp., ngunit aktwal na gumagana laban sa Linux.
Visual Studio
Pinapayagan ka nitong i-configure ang WSL bilang target para sa mga proyekto ng C++ gamit ang CMake. Maaari kang mag-compile at mag-debug sa Windows, WSL, o mga remote na makina, na inililipat ang target mula sa loob mismo ng IDE.
Tungkol sa kontrol ng bersyon, ang paggamit ng Git sa loob ng WSL ay kasing simple ng pag-install nito sa manager ng package ng iyong distro (halimbawa, sudo apt install git (sa Ubuntu) at i-configure ang mga kredensyal, mga file ng pagbubukod, mga pagtatapos ng linya, atbp. Maaari mo ring gamitin ang Windows Credential Manager upang isama ang pagpapatunay.
Pag-configure ng mga database sa WSL (MySQL, PostgreSQL, MongoDB, Redis, SQL Server, SQLite, atbp.) ay halos kapareho sa paggawa nito sa anumang Linux server. Maaari mong simulan ang mga serbisyo sa loob ng distro o gumamit ng mga Docker container sa WSL2, at pagkatapos ay ikonekta ang iyong mga application mula sa Windows o mula mismo sa WSL, depende sa iyong mga pangangailangan.
Pamamahala ng mga panlabas na drive, GUI, at mga backup ng mga pamamahagi
Pinapayagan din ng WSL2 i-mount ang mga panlabas na disk o USB drive direkta sa kapaligiran ng Linux. Mayroong partikular na dokumentasyon para sa pag-mount ng mga disk na may utos wsl --mountNagbibigay ito sa iyo ng maraming flexibility kapag nagtatrabaho sa data na mayroon ka sa iba pang mga unit.
Kung nais mong magpatakbo ng mga graphical na application ng Linux (GUI) sa loob ng WSL2 ay posible na ngayon salamat sa suporta ng Microsoft para sa mga GUI application. Binibigyang-daan ka nitong magbukas ng mga graphical na editor, mga tool sa disenyo, o magaan na desktop environment nang hindi kinakailangang mag-boot ng tradisyonal na virtual machine.
Upang gawin pag-backup o paglipat ng kumpletong distro sa ibang computerKasama sa WSL ang dalawang napaka-kapaki-pakinabang na utos:
- Mag-export ng distro:
wsl --export NombreDistro backup-wsl.tar
Bumubuo ito ng TAR file kasama ang buong file system nito. - Mag-import ng distro:
wsl --import NombreDistro C:\ruta\destino backup-wsl.tar --version 2
Ibinabalik nito ang distro kasama ang lahat ng nilalaman nito sa ibang landas at, kung gusto mo, tinitiyak na gumagamit ito ng WSL2.
Ang mekanismong ito sa pag-export/pag-import ay napaka-maginhawa para sa pag-clone ng mga kapaligiran sa pag-unlad, pagbabahagi ng mga ito sa mga kasamahan, o simpleng pagpapanatili ng backup ng seguridad bago gumawa ng malalaking pagbabago.
Itinatag ng WSL2 ang sarili nito bilang pangunahing kapaligiran sa pag-unlad Para sa maraming user ng Windows na ayaw isuko ang paglalaro, paggamit ng partikular na software, o ang kanilang daloy ng trabaho sa system na ito, ngunit nangangailangan ng tunay na kapaligiran ng Linux para sa programming, ang pagbibigay ng pagsubok sa WSL2 ay maaaring maging isang game-changer para sa kung paano ka nagtatrabaho.
Dalubhasa ang editor sa mga isyu sa teknolohiya at internet na may higit sa sampung taong karanasan sa iba't ibang digital media. Nagtrabaho ako bilang isang editor at tagalikha ng nilalaman para sa e-commerce, komunikasyon, online na marketing at mga kumpanya ng advertising. Nagsulat din ako sa mga website ng ekonomiya, pananalapi at iba pang sektor. Ang aking trabaho ay hilig ko rin. Ngayon, sa pamamagitan ng aking mga artikulo sa Tecnobits, sinusubukan kong tuklasin ang lahat ng mga balita at mga bagong pagkakataon na iniaalok sa atin ng mundo ng teknolohiya araw-araw upang mapabuti ang ating buhay.
