வழிகாட்டி

WSL (Windows Subsystem for Linux): அது என்ன, Windows-இல் நிறுவுவது எப்படி

புதுப்பிக்கப்பட்டது: · Skillaria.Top

WSL (Windows Subsystem for Linux) என்பது Windows 10 மற்றும் Windows 11-இல் உள்ள உள்ளமைந்த அம்சம்; தனி மெய்நிகர் இயந்திரமோ இரட்டை துவக்கமோ இல்லாமல் உண்மையான Linux விநியோகத்தை இயக்குகிறது. PowerShell-ஐ நிர்வாகியாகத் திறந்து wsl --install என ஒரே கட்டளையால் நிறுவப்படுகிறது; இயல்பாக WSL 2 மற்றும் Ubuntu வருகிறது, அதில் ஒரு இலகுவான மெய்நிகர் இயந்திரத்துக்குள் உண்மையான Linux கர்னல் இயங்குகிறது.

Windows Subsystem for Linux (WSL, Windows-க்கான Linux துணை அமைப்பு) Windows 10 மற்றும் Windows 11-இல் உள்ள ஒரு கூறு; இது Windows-க்குள்ளேயே Linux விநியோகத்தை இயக்க அனுமதிக்கிறது: bash முனையம், apt, ssh, grep, Docker மற்றும் எந்தக் கட்டளை வரி கருவிகளும். VirtualBox நிறுவவோ வட்டைப் பிரித்து இரண்டாவது அமைப்பை வைக்கவோ தேவையில்லை; Ubuntu ஒரு சாதாரண முனைய சாளரமாக சில வினாடிகளில் திறக்கும். கீழே WSL 1 மற்றும் WSL 2 வேறுபாடு, துணை அமைப்பை நிறுவும் முறை, கோப்புகள், VS Code மற்றும் வரைகலை பயன்பாடுகளுடன் வேலை செய்வது, பொதுவான பிழைகளைச் சரி செய்வது ஆகியவற்றை விளக்குகிறோம்.

Linux மற்றும் Windows-இல் WSL என்றால் என்ன

சுருக்கமாகச் சொன்னால், WSL என்பது Windows-ஐ விட்டு வெளியேறாமலேயே முழுமையான Linux சூழலைப் பெறும் வழி. Ubuntu, Debian, openSUSE, Kali, AlmaLinux போன்ற ஒரு விநியோகத்தை கட்டளை வரியிலிருந்தோ Microsoft Store-இலிருந்தோ நிறுவி, சர்வரில் செய்வது போலவே பயன்படுத்தலாம்: பயனர்கள், அனுமதிகள், தொகுப்புகள், சேவைகள்.

WSL செய்யாதவற்றைப் புரிந்துகொள்வதும் முக்கியம். இது Cygwin போன்ற emulator அல்ல; போர்ட் செய்யப்பட்ட கருவிகளின் தொகுப்பும் அல்ல: WSL 2-இல் Microsoft உருவாக்கிய உண்மையான Linux கர்னல் இயங்குகிறது. அதனால் Linux இயங்கக்கூடிய கோப்புகள் மறுபடி தொகுக்காமல் இயங்கும்; WSL-இல் பெற்ற திறன்கள் நேரடியாக உண்மையான சர்வருக்கு மாற்றப்படும்.

இந்தத் துணை அமைப்புக்கான வழக்கமான பணிகள்:

  • தனி கணினி இல்லாமல் Linux மற்றும் கட்டளை வரியைக் கற்றல்;
  • production சர்வர் Linux-இல் இயங்கும் இணையத் திட்டங்களின் மேம்பாடு (Python, Node.js, PHP, Go);
  • Docker Desktop — அது WSL 2-ஐ backend ஆகப் பயன்படுத்துகிறது;
  • SSH வழியாக சர்வர்களுடன் இணைதல், bash ஸ்கிரிப்ட்கள், பழக்கமான சூழலில் git.

WSL 1 மற்றும் WSL 2: வேறுபாடு என்ன

துணை அமைப்புக்கு இரண்டு கட்டமைப்புகள் உண்டு. WSL 1 Linux அமைப்பு அழைப்புகளை (system calls) Windows கர்னல் அழைப்புகளாக மொழிபெயர்க்கிறது; அங்கு தனி Linux கர்னல் இல்லை. WSL 2 Hyper-V அடிப்படையிலான இலகுவான மெய்நிகர் இயந்திரத்துக்குள் உண்மையான Linux கர்னலை இயக்குகிறது; அது சில வினாடிகளில் தொடங்கி நினைவகத்தைத் தானே நிர்வகிக்கிறது.

அளவுகோல்WSL 1WSL 2
கர்னல்இல்லை, அமைப்பு அழைப்பு மொழிபெயர்ப்புஉண்மையான Linux கர்னல்
அமைப்பு அழைப்பு இணக்கம்பகுதியளவுமுழுமையானது
Docker, systemdஇல்லைஆம்
Linux கோப்புகளின் வேகம் (~/)குறைவுஅதிகம்
Windows கோப்புகளின் வேகம் (/mnt/c)அதிகம்தெளிவாகக் குறைவு
மெய்நிகராக்கம் (virtualization) தேவைஇல்லைஆம்
பிணையம்Windows உடன் பகிரப்பட்டதுதனி மெய்நிகர் பிணையம் (இயல்பாக NAT)

பெரும்பாலான சூழ்நிலைகளில் WSL 2-ஐத் தேர்ந்தெடுங்கள்; அதுவே இயல்பானது. மெய்நிகராக்கத்தை இயக்க முடியாவிட்டால் (உதாரணமாக Windows ஏற்கெனவே ஒரு மெய்நிகர் இயந்திரத்துக்குள் இயங்கினால், உள்ளமைந்த மெய்நிகராக்கம் இல்லாமல்), அல்லது திட்டம் Windows வட்டில் இருக்க வேண்டியதாகவும் அதனுடன் தொடர்ந்து வேலை செய்ய வேண்டியதாகவும் இருந்தால் மட்டுமே WSL 1 பொருள் தரும்.

Windows 10 மற்றும் 11-இல் WSL-ஐ நிறுவுவது எப்படி

Windows 11 மற்றும் Windows 10 பதிப்பு 2004 அல்லது அதற்குப் பிந்தையது (build 19041+) ஆகியவற்றில் நிறுவல் ஒரே கட்டளையில் முடியும். PowerShell அல்லது «Terminal» ஐ நிர்வாகியாகத் திறந்து இதை இயக்குங்கள்:

wsl --install

இந்தக் கட்டளை தேவையான Windows கூறுகளை இயக்குகிறது, WSL 2 கர்னலைப் பதிவிறக்குகிறது, Ubuntu-ஐ நிறுவுகிறது. மறுதுவக்கத்துக்குப் பிறகு விநியோகச் சாளரம் திறக்கும்: Linux பயனர் பெயரும் கடவுச்சொல்லும் தேர்ந்தெடுங்கள். அவை Windows கணக்கிலிருந்து தனியானவை; sudo-க்கு இந்தக் கடவுச்சொல் தேவைப்படும்.

Enter new UNIX username: alex
New password:
Retype new password:
passwd: password updated successfully
Installation successful!

ஒரு புதிய சர்வரில் செய்வது போல உடனே தொகுப்புகளைப் புதுப்பியுங்கள்:

sudo apt update && sudo apt upgrade -y

விநியோகத்தைத் தேர்ந்தெடுப்பது

இயல்பாக Ubuntu நிறுவப்படும்; ஆனால் வேறொரு விநியோகத்தையும் தேர்ந்தெடுக்கலாம். கிடைக்கும் பட்டியல்:

wsl --list --online

அந்தப் பட்டியலிலுள்ள பெயரின் மூலம் ஒரு குறிப்பிட்ட விநியோகத்தை நிறுவுதல்:

wsl --install -d Debian

WSL ஏற்கெனவே நிறுவப்பட்டிருந்தால் கட்டளை புதிய விநியோகத்தை மட்டும் சேர்க்கும். ஒரே நேரத்தில் பல அமைப்புகளை வைத்திருக்கலாம்; உதாரணமாக வேலைக்கு Ubuntu, பரிசோதனைகளுக்கு Kali.

பதிப்பைச் சரிபார்த்தல்: wsl -l -v

நிறுவப்பட்ட விநியோகங்கள், அவற்றின் நிலை மற்றும் WSL பதிப்பைக் காண:

wsl -l -v
  NAME      STATE           VERSION
* Ubuntu    Running         2
  Debian    Stopped         2

நட்சத்திரக்குறி இயல்பு விநியோகத்தைக் குறிக்கிறது; அது wsl என்று அளவுருக்கள் இல்லாமல் இயக்கும்போது திறக்கும். அதை மாற்ற: wsl --set-default Debian.

WSL 1-ஐ WSL 2-க்கு மாற்றுவது எப்படி

புதிய நிறுவல்களுக்கான பதிப்பு இந்தக் கட்டளையால் அமைக்கப்படுகிறது:

wsl --set-default-version 2

ஏற்கெனவே நிறுவப்பட்ட விநியோகம் தனியாக மாற்றப்பட வேண்டும் (தரவு பாதுகாக்கப்படும்; ஆனால் சில நிமிடங்கள் ஆகலாம்):

wsl --set-version Ubuntu 2

மீண்டும் மாற்ற: wsl --set-version Ubuntu 1.

பயனுள்ள WSL மேலாண்மைக் கட்டளைகள்

கட்டளைஎன்ன செய்கிறது
wslஇயல்பு விநியோகத்தைத் திறக்கிறது
wsl -d Debianகுறிப்பிட்ட விநியோகத்தைத் திறக்கிறது
wsl --shutdownஎல்லா விநியோகங்களையும் WSL 2 மெய்நிகர் இயந்திரத்தையும் நிறுத்துகிறது
wsl --terminate Ubuntuஒரு விநியோகத்தை மட்டும் நிறுத்துகிறது
wsl --updateWSL மற்றும் கர்னலைப் புதுப்பிக்கிறது
wsl --statusஇயல்பு பதிப்பு மற்றும் பொதுவான நிலை
wsl --export Ubuntu ubuntu.tarவிநியோகத்தை ஆவணக் கோப்பாக காப்புப் பிரதி எடுக்கிறது
wsl --import Ubuntu2 D:\wsl\u2 ubuntu.tarவிநியோகத்தை மீட்டெடுக்க அல்லது நகலெடுக்க
wsl --unregister Ubuntuவிநியோகத்தை அதன் எல்லா தரவுகளுடன் நீக்குகிறது

--unregister குறித்து கவனமாக இருங்கள்: விநியோகத்துக்குள் உள்ள கோப்புகள் குப்பைத்தொட்டி இல்லாமல் நீக்கப்படும். அதற்கு முன் --export செய்யுங்கள்.

Windows மற்றும் Linux இடையே கோப்புகள்

Windows இயக்கிகள் WSL-க்குள் /mnt கோப்புறையில் தானாக ஏற்றப்படுகின்றன: C: இயக்கி /mnt/c ஆகவும், D: இயக்கி /mnt/d ஆகவும் தெரியும்.

cd /mnt/c/Users/alex/Downloads
ls -l
cp report.csv ~/projects/

எதிர்த்திசையில், Linux கோப்புகள் File Explorer-இல் \\wsl$\Ubuntu பிணையப் பாதை வழியாகத் தெரியும் (Windows 11-இல் \\wsl.localhost\Ubuntu ஆகவும்), மற்றும் பக்கப்பட்டியில் «Linux» பிரிவிலும். தற்போதைய Linux கோப்புறையை Explorer-இல் விரைவாகத் திறக்க:

explorer.exe .

WSL-இலிருந்து Windows நிரல்களை இயக்கலாம் (notepad.exe, code); PowerShell-இலிருந்து முன்னொட்டுடன் Linux கட்டளைகளை இயக்கலாம்: wsl ls -la. இரு அமைப்புகளுக்கிடையே பாதைகளை மாற்ற wslpath கருவி உள்ளது:

wslpath 'C:\Users\alex'
/mnt/c/Users/alex

WSL 2-இன் செயல்திறனுக்கான முக்கிய விதி: திட்டங்களை Linux கோப்பு முறைமையில் (~/projects) வையுங்கள்; /mnt/c-இல் அல்ல. Windows இயக்கிகளை அணுகுவது பிணைய நெறிமுறை வழியாகச் செல்கிறது; பெரிய திட்டத்தில் git status அல்லது npm install போன்ற செயல்பாடுகள் அங்கே பல மடங்கு மெதுவாக இருக்கும்.

VS Code மற்றும் WSL

Visual Studio Code WSL-ஐ ஒரு தொலைதூர இயந்திரம் போல பயன்படுத்த முடியும்: இடைமுகம் Windows-இலேயே இருக்கும்; முனையம், நீட்சிகள் (extensions), மொழிபெயர்ப்பிகள், பிழைத்திருத்தி (debugger) Linux-க்குள் இயங்கும். இதற்கு Microsoft-இன் WSL நீட்சி தேவை. பின்னர் விநியோக முனையத்தில் திட்டக் கோப்புறைக்குச் சென்று இயக்குங்கள்:

cd ~/projects/site
code .

முதல் தொடக்கத்தில் VS Code சேவையக பகுதியை Linux-இல் தானாக நிறுவும். கீழ் இடது மூலையில் «WSL: Ubuntu» குறிகாட்டி தோன்றும்; அதாவது உள்ளமைந்த முனையத்தில் நீங்கள் இயக்கும் அனைத்தும் Linux-இல் இயங்குகின்றன. Python அல்லது ESLint போன்ற நீட்சிகளை «WSL-இல்» நிறுவ வேண்டும்; VS Code அதற்கான பொத்தானைக் காட்டும்.

WSL-இல் வரைகலை பயன்பாடுகள் (WSLg)

Windows 11-லும், Windows 10-இல் நவீன WSL பதிப்புகளிலும் WSLg உண்டு: X சேவையகத்தை அமைக்காமலேயே Linux வரைகலை பயன்பாடுகளுக்கு ஆதரவு. நிரலை வழக்கம்போல நிறுவுங்கள்; அதன் சாளரம் Windows சாளரங்களுடன் தோன்றும், குறுக்குவழி «Start» மெனுவில் இருக்கும்.

sudo apt install gedit -y
gedit ~/.bashrc &

WSLg X11 மற்றும் Wayland, ஒலி, கிளிப்போர்டு ஆகியவற்றை ஆதரிக்கிறது. ஆனாலும் அன்றாட வேலைக்கு முழு Linux டெஸ்க்டாப்புக்கு இது மாற்றல்ல: WSL தனித்தனி பயன்பாடுகளுக்காக வடிவமைக்கப்பட்டது; GNOME அல்லது KDE முழுவதையும் இயக்குவதற்காக அல்ல.

systemd மற்றும் WSL 2 வளங்கள்

WSL 2-இன் நவீன பதிப்புகள் systemd-ஐ ஆதரிக்கின்றன: புதிய Ubuntu நிறுவல்களில் அது இயல்பாக இயக்கப்பட்டிருக்கும். இல்லையென்றால் விநியோகத்துக்குள் /etc/wsl.conf கோப்பில் சேர்க்கவும்:

[boot]
systemd=true

பின்னர் PowerShell-இலிருந்து துணை அமைப்பை மறுதொடக்கம் செய்யுங்கள்: wsl --shutdown. அதன் பின் systemctl மற்றும் nginx அல்லது PostgreSQL போன்ற சேவைகள் வேலை செய்யும்.

WSL 2 மெய்நிகர் இயந்திரம் எவ்வளவு நினைவகமும் செயலிகளும் பயன்படுத்தலாம் என்பதை Windows பக்கத்திலுள்ள %UserProfile%\.wslconfig கோப்பில் கட்டுப்படுத்தலாம்:

[wsl2]
memory=4GB
processors=2

அமைப்புகள் wsl --shutdown-க்குப் பிறகு நடைமுறைக்கு வரும்.

WSL நிறுவலில் பொதுவான பிழைகள்

பிழை 0x80370102

முழு செய்தி: «மெய்நிகர் இயந்திரத்தைத் தொடங்க முடியவில்லை, தேவையான கூறு நிறுவப்படவில்லை» (WslRegisterDistribution failed with error: 0x80370102). காரணம் பெரும்பாலும் ஒன்றுதான்: WSL 2-ஆல் மெய்நிகர் இயந்திரத்தைத் தொடங்க முடியவில்லை. வரிசையாகச் சரிபார்க்கவும்:

  1. BIOS/UEFI-இல் வன்பொருள் மெய்நிகராக்கம் இயக்கப்பட்டுள்ளதா: Intel VT-x (Intel Virtualization Technology) அல்லது AMD-V (SVM Mode)? நிலையை Task Manager → Performance → CPU → «Virtualization: Enabled» என்பதில் காணலாம்.
  2. «Virtual Machine Platform» கூறு இயக்கப்பட்டுள்ளதா?
  3. துவக்க ஏற்றியில் hypervisor முடக்கப்பட்டுள்ளதா?

கூறுகளை நிர்வாகியாக PowerShell-இலிருந்து இயக்குங்கள்:

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

பின்னர் கணினியை மறுதொடக்கம் செய்யுங்கள். நீங்கள் ஒரு மெய்நிகர் இயந்திரத்தின் உள்ளே வேலை செய்தால், ஹோஸ்டில் உள்ளமைந்த மெய்நிகராக்கத்தை அனுமதிக்க வேண்டும்; அல்லது WSL 1-ஐப் பயன்படுத்துங்கள்.

மற்ற பொதுவான சிக்கல்கள்

  • 0x800701bc: WSL 2 கர்னல் புதுப்பிக்கப்படவில்லை. wsl --update இயக்குங்கள்.
  • wsl --install உதவிச் செய்தியை மட்டும் காட்டுகிறது: WSL ஏற்கெனவே நிறுவப்பட்டுள்ளது; wsl --install -d Ubuntu மூலம் ஒரு விநியோகத்தைச் சேர்க்கவும்.
  • VPN இயங்கும்போது WSL-இல் இணையம் இல்லை: VPN கிளையன்ட் மெய்நிகர் பிணையத்தின் பாதைகளை இடைமறிக்கிறது. Windows 11-இல் .wslconfig கோப்பின் [wsl2] பிரிவில் networkingMode=mirrored உதவும்.
  • WSL அதிக இடத்தை எடுக்கிறது: ext4.vhdx மெய்நிகர் வட்டு பெருகும்; ஆனால் கோப்புகளை நீக்கிய பிறகு தானாகச் சுருங்காது. கைமுறையாகச் சுருக்கலாம் அல்லது --export/--import மூலம் மாற்றலாம்.
  • Linux கடவுச்சொல் மறந்துவிட்டது: PowerShell-இலிருந்து root ஆக நுழையுங்கள்: wsl -u root, பின்னர் passwd alex.

WSL, மெய்நிகர் இயந்திரம் அல்லது இரட்டை துவக்கம்

Windows கணினியில் Linux பெற WSL மட்டுமே வழி அல்ல. தேர்வு பணியைப் பொறுத்தது.

தேர்வுநன்மைகள்குறைகள்எப்போது தேர்ந்தெடுக்கலாம்
WSL 2சில வினாடிகளில் தொடக்கம், பகிரப்பட்ட கோப்புகள், VS Code, Dockerமுழு டெஸ்க்டாப் இல்லை; பிணையம் மற்றும் வட்டுகளில் சிறப்பியல்புகள்மேம்பாடு, கட்டளை வரி கற்றல், ஸ்கிரிப்ட்கள்
மெய்நிகர் இயந்திரம் (VirtualBox, Hyper-V, VMware)முழு தனிமைப்படுத்தல், ஸ்னாப்ஷாட்கள், எந்த விநியோகமும் டெஸ்க்டாப்பும், தனி பிணைய அட்டைகனமானது; வளங்கள் முன்கூட்டியே ஒதுக்கப்படும்சர்வர் சோதனைச் சூழல், பிணையம், துவக்கம் மற்றும் வட்டுப் பிரிவினை பரிசோதனைகள்
இரட்டை துவக்கம் (Dual boot)வன்பொருளின் முழு சக்தி, நேரடி வரைகலை மற்றும் இயக்கிகள்மாற மறுதொடக்கம்; வட்டுப் பிரிவினையில் ஆபத்துLinux முதன்மை அமைப்பாக, Linux-இல் விளையாட்டுகள் மற்றும் GPU பணிகள்

Linux-ஐ முதலிலிருந்து கற்க WSL பொதுவாகப் போதும்: கோப்புகள், அனுமதிகள், செயல்முறைகள், தொகுப்புகள், bash ஸ்கிரிப்ட்கள் மற்றும் SSH சர்வரில் போலவே செயல்படும். துவக்க ஏற்றி, இயற்பியல் வட்டுப் பிரிவினை, பிணைய இடைமுகங்கள், ஹோஸ்ட் அளவிலான firewall போன்ற WSL-இல் வேறுவிதமாக அமைந்தவற்றை அடையும்போதுதான் மெய்நிகர் இயந்திரம் தேவைப்படும்.

சுருக்கம்

Windows Subsystem for Linux ஒரே கட்டளையான wsl --install மூலம் Windows-க்குள் உண்மையான Linux-ஐத் தருகிறது. WSL 2-ஐத் தேர்ந்தெடுங்கள், wsl -l -v மூலம் பதிப்புகளைச் சரிபார்க்கவும், திட்டங்களை /mnt/c-இல் அல்ல ~/-இல் வைத்திருங்கள், VS Code-ஐ WSL நீட்சியுடன் இணையுங்கள். நிறுவல் 0x80370102 பிழையுடன் தோல்வியடைந்தால் BIOS-இல் மெய்நிகராக்கத்தையும் «Virtual Machine Platform» கூறையும் இயக்குங்கள். இந்த அமைப்பில் Linux பாடநெறியின் நடைமுறைப் பயிற்சி தொடங்குகிறது.

அடிக்கடி கேட்கப்படும் கேள்விகள்

WSL இலவசமா?

ஆம். WSL Windows 10 மற்றும் Windows 11-இன் எல்லாப் பதிப்புகளிலும் வருகிறது, Home பதிப்பிலும் கூட; Linux விநியோகங்களும் இலவசம்.

WSL-இல் Docker இயக்க முடியுமா?

முடியும், ஆனால் WSL 2-இல் மட்டும். WSL 2 backend உடன் Docker Desktop நிறுவலாம், அல்லது சாதாரண Ubuntu சர்வரில் போலவே விநியோகத்துக்குள் Docker Engine நேரடியாக நிறுவலாம்.

WSL விநியோகத்தின் கோப்புகள் உண்மையில் எங்கே சேமிக்கப்படுகின்றன?

WSL 2-இல் அவை Windows பயனர் சுயவிவரத்தில் உள்ள ext4.vhdx மெய்நிகர் வட்டில் இருக்கும். அதை நேரடியாகத் திறக்க வேண்டியதில்லை; Explorer-இல் \\wsl$\ பாதையைப் பயன்படுத்துங்கள்.

WSL-ஐ முழுமையாக நீக்குவது எப்படி?

விநியோகங்களை wsl --unregister <பெயர்> மூலம் நீக்குங்கள்; பின்னர் Settings → Apps → «Installed apps» பிரிவில் «Windows Subsystem for Linux» பயன்பாட்டை நீக்குங்கள்; தேவைப்பட்டால் Windows கூறுகளை முடக்குங்கள்.

WSL-ஐ வேறு வட்டுக்கு மாற்ற முடியுமா?

முடியும்: wsl --export Ubuntu ubuntu.tar, பின்னர் wsl --unregister Ubuntu, பின்னர் wsl --import Ubuntu D:\wsl\ubuntu ubuntu.tar. புதிய பதிப்புகளில் wsl --manage Ubuntu --move கட்டளையும் உண்டு.

இந்தத் தலைப்பை வீடியோவில் கற்றுக்கொள்ளுங்கள்

“Linux: с нуля до уверенного администрирования” பாடநெறியில் இந்தத் தலைப்பு பயிற்சியுடன் விரிவாக விளக்கப்பட்டுள்ளது.

பாடநெறிக்குச் செல்