WSL (Windows Subsystem for Linux): ano ito, pag-install, at pag-set up ng Linux sa Windows
Ang WSL (Windows Subsystem for Linux) ay subsystem na nakapaloob sa Windows 10 at 11 na nagpapatakbo ng totoong Linux distro nang walang hiwalay na virtual machine at dual boot. Naka-install ito sa isang utos na wsl --install sa PowerShell na binuksan bilang administrator; bilang default, WSL 2 ang nai-install kasama ang Ubuntu, kung saan tumatakbo ang totoong Linux kernel sa magaan na virtual machine.
Ang Windows Subsystem for Linux (WSL) ay bahagi ng Windows 10 at 11 na nagpapahintulot na magpatakbo ng Linux distro mismo sa loob ng Windows: bash terminal, apt, ssh, grep, Docker, at anumang command-line utility. Hindi kailangang mag-install ng VirtualBox o hatiin ang disk para sa pangalawang sistema: bumubukas ang Ubuntu bilang normal na terminal window sa loob ng ilang segundo. Sa ibaba, makikita mo ang pagkakaiba ng WSL 1 at WSL 2, paano i-install ang subsystem, paano magtrabaho sa mga file, VS Code, at graphical na app, at kung paano lutasin ang karaniwang error.
Ano ang WSL sa Linux at Windows
Sa madaling sabi, ang WSL ay paraan para magkaroon ng buong Linux environment para sa development at pag-aaral nang hindi umaalis sa Windows. Mag-i-install ka ng distro (Ubuntu, Debian, openSUSE, Kali, AlmaLinux, at iba pa) mula sa command line o sa Microsoft Store, at pagkatapos ay gagamitin mo ito tulad ng sa server: mga user, permiso, package, at serbisyo.
Mahalagang malaman kung ano ang hindi ginagawa ng WSL. Hindi ito emulator ng mga utos gaya ng Cygwin, at hindi rin ito koleksiyon ng mga utility na na-port: sa WSL 2, tumatakbo ang totoong Linux kernel na ginawa ng Microsoft. Kaya tumatakbo ang mga Linux binary nang walang re-compile, at ang mga kasanayang natutunan sa WSL ay direktang magagamit sa totoong server.
Mga karaniwang gamit ng subsystem:
- pag-aaral ng Linux at command line nang walang hiwalay na computer;
- web development kapag Linux ang production (Python, Node.js, PHP, Go);
- Docker Desktop — ginagamit nito ang WSL 2 bilang engine;
- pagkonekta sa mga server sa pamamagitan ng SSH, bash script, at git sa pamilyar na kapaligiran.
WSL 1 at WSL 2: ano ang pagkakaiba
May dalawang arkitektura ang subsystem. Ang WSL 1 ay nagta-translate ng mga system call ng Linux sa mga call ng Windows kernel; walang sariling Linux kernel doon. Ang WSL 2 ay nagpapatakbo ng totoong Linux kernel sa magaan na virtual machine na nakabatay sa Hyper-V, na nagsisimula sa loob ng ilang segundo at mismong namamahala ng memorya.
| Katangian | WSL 1 | WSL 2 |
|---|---|---|
| Kernel | wala, translation ng system call | totoong Linux kernel |
| Compatibility ng system call | bahagi | buo |
| Docker, systemd | hindi | oo |
Bilis sa mga file ng Linux (~/) | mas mabagal | mabilis |
Bilis sa mga file ng Windows (/mnt/c) | mabilis | mas mabagal nang malaki |
| Kailangan ang virtualization | hindi | oo |
| Network | shared sa Windows | sariling virtual network (NAT bilang default) |
Para sa halos lahat ng sitwasyon, piliin ang WSL 2 — ito ang default. Makatuwiran ang WSL 1 kung hindi puwedeng i-enable ang virtualization (halimbawa, tumatakbo ang Windows mismo sa loob ng virtual machine na walang nested virtualization), o kung ang proyekto ay kailangang nasa disk ng Windows at aktibong gumagana roon.
Paano i-install ang WSL sa Windows 10 at 11
Sa Windows 11 at Windows 10 version 2004 pataas (build 19041+), isang utos lang ang kailangan. Buksan ang PowerShell o Terminal bilang administrator at patakbuhin:
wsl --install
Ini-enable ng utos ang mga kailangang component ng Windows, dina-download ang WSL 2 kernel, at ini-install ang Ubuntu. Pagkatapos ng restart, magbubukas ang window ng distro: magtakda ng Linux username at password. Hindi ito konektado sa Windows account; kakailanganin ang password na ito para sa sudo.
Enter new UNIX username: alex
New password:
Retype new password:
passwd: password updated successfully
Installation successful!
Agad i-update ang mga package, tulad ng sa anumang bagong server:
sudo apt update && sudo apt upgrade -y
Paano pumili ng distro
Naka-install bilang default ang Ubuntu, pero maaari kang pumili ng iba. Listahan ng mga available:
wsl --list --online
Pag-install ng partikular na distro gamit ang pangalan mula sa listahan:
wsl --install -d Debian
Kung naka-install na ang WSL, idadagdag lang ng utos ang bagong distro. Puwede kang magkaroon ng ilang sistema nang sabay, halimbawa Ubuntu para sa trabaho at Kali para sa mga eksperimento.
Pag-check ng bersyon: wsl -l -v
Para makita ang mga naka-install na distro, ang kanilang estado, at bersyon ng WSL:
wsl -l -v
NAME STATE VERSION
* Ubuntu Running 2
Debian Stopped 2
Ang asterisk ang nagmamarka ng default na distro, na binubuksan ng wsl nang walang parameter. Maaari itong palitan: wsl --set-default Debian.
Paano palitan ang WSL 1 sa WSL 2
Itinatakda ang bersyon para sa mga bagong install gamit ang:
wsl --set-default-version 2
Ang distro na naka-install na ay kailangang i-convert nang hiwalay (napapanatili ang data, pero maaaring tumagal ng ilang minuto):
wsl --set-version Ubuntu 2
Ang pagbabalik sa WSL 1 ay wsl --set-version Ubuntu 1.
Mga kapaki-pakinabang na utos sa pamamahala ng WSL
| Utos | Ano ang ginagawa |
|---|---|
wsl | buksan ang default na distro |
wsl -d Debian | buksan ang partikular na distro |
wsl --shutdown | ihinto ang lahat ng distro at ang WSL 2 virtual machine |
wsl --terminate Ubuntu | ihinto ang isang distro |
wsl --update | i-update ang WSL at ang kernel |
wsl --status | default na bersyon at pangkalahatang estado |
wsl --export Ubuntu ubuntu.tar | backup ng distro sa archive |
wsl --import Ubuntu2 D:\wsl\u2 ubuntu.tar | ibalik o i-clone ang distro |
wsl --unregister Ubuntu | burahin ang distro kasama ang lahat ng data |
Mag-ingat sa --unregister: nabubura nang tuluyan ang mga file sa loob ng distro, walang recycle bin. Bago ito, gumawa muna ng --export.
Mga file ng Windows mula sa Linux at pabalik
Awtomatikong nakakabit ang mga disk ng Windows sa loob ng WSL sa direktoryong /mnt: ang disk C: ay /mnt/c, ang D: ay /mnt/d.
cd /mnt/c/Users/alex/Downloads
ls -l
cp report.csv ~/projects/
Sa kabilang direksiyon, nakikita ang mga file ng Linux sa File Explorer sa network path na \\wsl$\Ubuntu (sa Windows 11, puwede rin ang \\wsl.localhost\Ubuntu) at sa seksiyong "Linux" sa sidebar. Mabilis na buksan ang kasalukuyang direktoryo ng Linux sa Explorer:
explorer.exe .
Mula sa WSL, puwede kang magpatakbo ng mga program ng Windows (notepad.exe, code), at mula sa PowerShell, mga utos ng Linux gamit ang prefix: wsl ls -la. Para i-convert ang mga path sa pagitan ng dalawang sistema, may utility na wslpath:
wslpath 'C:\Users\alex'
/mnt/c/Users/alex
Pangunahing tuntunin sa performance ng WSL 2: itago ang mga proyekto sa Linux file system (~/projects), hindi sa /mnt/c. Dumadaan sa network protocol ang access sa disk ng Windows, at ang mga operasyon gaya ng git status o npm install sa malaking proyekto ay mas mabagal doon nang ilang beses.
VS Code at WSL
Kayang gamitin ng Visual Studio Code ang WSL na parang remote machine: nananatili ang interface sa Windows, pero ang terminal, extension, interpreter, at debugger ay tumatakbo sa Linux. Kailangan ang extension na WSL (Microsoft) para dito. Pagkatapos, sa terminal ng distro, pumunta sa direktoryo ng proyekto at patakbuhin:
cd ~/projects/site
code .
Sa unang pagbukas, ang VS Code na mismo ang mag-i-install ng server component sa Linux. Sa kaliwang ibabang sulok, lalabas ang indicator na "WSL: Ubuntu" — ibig sabihin, lahat ng pinapatakbo mo mula sa built-in terminal ay tumatakbo sa Linux. Ang mga extension tulad ng Python o ESLint ay kailangang i-install "sa WSL" — magmumungkahi ang VS Code ng button para dito.
Mga graphical na app sa WSL (WSLg)
Sa Windows 11 at sa mga kasalukuyang bersyon ng WSL sa Windows 10, may WSLg — suporta sa mga graphical na Linux app nang walang anumang X server na kailangang i-configure. I-install ang program gaya ng dati, at lalabas ang window nito sa tabi ng mga window ng Windows, at ang shortcut ay nasa Start menu.
sudo apt install gedit -y
gedit ~/.bashrc &
Sinusuportahan ng WSLg ang X11 at Wayland, tunog, at clipboard. Para sa araw-araw na paggamit ng buong Linux desktop, hindi ito ganap na kapalit: idinisenyo ang WSL para sa mga indibidwal na app, hindi para sa buong GNOME o KDE.
systemd at mga resource ng WSL 2
Sa mga kasalukuyang bersyon ng WSL 2, sinusuportahan ang systemd: sa mga bagong install ng Ubuntu, naka-enable na ito bilang default. Kung hindi, idagdag sa file na /etc/wsl.conf sa loob ng distro:
[boot]
systemd=true
at i-restart ang subsystem mula sa PowerShell: wsl --shutdown. Pagkatapos nito, gagana ang systemctl at mga serbisyo gaya ng nginx o PostgreSQL.
Maaaring limitahan ang memorya at mga processor ng WSL 2 virtual machine sa file na %UserProfile%\.wslconfig sa panig ng Windows:
[wsl2]
memory=4GB
processors=2
Nagkakabisa ang mga setting pagkatapos ng wsl --shutdown.
Karaniwang error sa pag-install ng WSL
Error 0x80370102
Buong mensahe: "The virtual machine could not be started because a required component is not installed" (WslRegisterDistribution failed with error: 0x80370102). Halos palaging iisa ang dahilan: hindi mapatakbo ng WSL 2 ang virtual machine. Suriin ito nang ayon sa pagkakasunod-sunod:
- Naka-enable ba ang hardware virtualization sa BIOS/UEFI: Intel VT-x (Intel Virtualization Technology) o AMD-V (SVM Mode). Makikita ito sa Task Manager → "Performance" → CPU → "Virtualization: Enabled".
- Naka-enable ba ang "Virtual Machine Platform" component.
- Hindi ba naka-disable ang hypervisor sa boot loader.
Ini-enable ang mga component mula sa PowerShell bilang administrator:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
bcdedit /set hypervisorlaunchtype auto
Pagkatapos nito, i-restart ang computer. Kung nasa loob ka ng virtual machine, kailangang payagan ang nested virtualization sa host — o gamitin na lang ang WSL 1.
Iba pang karaniwang problema
- 0x800701bc — hindi pa na-update ang WSL 2 kernel. Patakbuhin ang
wsl --update. - Naglalabas lang ng help ang
wsl --install— naka-install na ang WSL; idagdag ang distro gamit angwsl --install -d Ubuntu. - Walang internet sa loob ng WSL kapag may VPN — hinaharang (intercept) ng VPN client ang mga route ng virtual network. Sa Windows 11, nakatutulong ang
networkingMode=mirroredsa seksiyong[wsl2]ng.wslconfig. - Maraming espasyong nagagamit ang WSL — lumalaki ang virtual disk na
ext4.vhdx, pero hindi ito awtomatikong lumiliit pagkatapos mabura ang mga file. Puwede itong paliitin nang manu-mano, o ilipat ang distro gamit ang--export/--import. - Nakalimutan ang password ng Linux — pumasok bilang root mula sa PowerShell:
wsl -u root, pagkatapospasswd alex.
WSL, virtual machine, o dual boot
Hindi lang WSL ang paraan para magkaroon ng Linux sa computer na may Windows. Nakadepende ang pagpili sa gawain.
| Opsiyon | Mga bentahe | Mga disadvantage | Kailan piliin |
|---|---|---|---|
| WSL 2 | nagsisimula sa loob ng ilang segundo, shared na file, VS Code, Docker | walang buong desktop, may mga kakaibang kilos sa network at disk | development, pag-aaral ng command line, script |
| Virtual machine (VirtualBox, Hyper-V, VMware) | buong isolation, snapshot, anumang distro at desktop, sariling network card | mas mabigat, nakalaan nang maaga ang resources | server lab, eksperimento sa network, boot, at disk partition |
| Dual boot | buong lakas ng hardware, native na graphics at driver | kailangang mag-restart para lumipat, may panganib sa partitioning | Linux bilang pangunahing sistema, mga laro at GPU task sa Linux |
Para matutunan ang Linux mula sa simula, kadalasang sapat na ang WSL: gumagana ang mga file, permiso, proseso, package, bash script, at SSH gaya sa server. Kakailanganin ang virtual machine kapag dumating ka sa mga bagay na iba ang estruktura sa WSL: boot loader, partitioning ng pisikal na disk, network interface, at firewall sa antas ng host.
Buod
Binibigyan ka ng Windows Subsystem for Linux ng totoong Linux sa loob ng Windows gamit ang isang utos na wsl --install. Piliin ang WSL 2, i-check ang mga bersyon gamit ang wsl -l -v, itago ang mga proyekto sa ~/ at hindi sa /mnt/c, at ikonekta ang VS Code gamit ang extension na WSL. Kung pumapalya ang install sa 0x80370102, i-enable ang virtualization sa BIOS at ang "Virtual Machine Platform". Sa pag-set up ng ganitong workspace nagsisimula ang praktika sa kursong Linux.
Mga madalas itanong
Libre ba ang WSL?
Oo. Kasama ang WSL sa lahat ng edisyon ng Windows 10 at 11, kasama ang Home, at libre rin ang mga distro ng Linux.
Puwede bang patakbuhin ang Docker sa WSL?
Oo, pero sa WSL 2 lang. Puwedeng i-install ang Docker Desktop na gumagamit ng WSL 2 engine, o ang Docker Engine mismo sa loob ng distro, tulad sa isang karaniwang Ubuntu server.
Saan pisikal na nakaimbak ang mga file ng distro ng WSL?
Sa WSL 2, nasa virtual disk na ext4.vhdx sa profile ng user ng Windows. Hindi mo ito kailangang buksan nang direkta; gamitin ang path na \\wsl$\ sa File Explorer.
Paano ganap na aalisin ang WSL?
Burahin ang mga distro gamit ang <code>wsl --unregister</code> na may pangalan, pagkatapos alisin ang app na "Windows Subsystem for Linux" sa "Installed apps", at kung kailangan, i-disable ang mga component ng Windows.
Puwede bang ilipat ang WSL sa ibang disk?
Oo: <code>wsl --export Ubuntu ubuntu.tar</code>, pagkatapos <code>wsl --unregister Ubuntu</code> at <code>wsl --import Ubuntu D:\wsl\ubuntu ubuntu.tar</code>. Sa mga bagong bersyon, may utos ding <code>wsl --manage Ubuntu --move</code>.
Detalyadong tinatalakay ang paksang ito, may praktis, sa kursong “Linux: с нуля до уверенного администрирования”.
Pumunta sa kurso