Skip to content

WSL को सक्षम करना और कॉन्फ़िगर करना ​

WSL Dashboard का उपयोग करने से पहले, आपके Windows सिस्टम में WSL 2 परिवेश को सही ढंग से सक्षम और कॉन्फ़िगर किया जाना आवश्यक है। यह दस्तावेज़ निम्नलिखित तीन मुख्य भागों में विभाजित है:

  1. WSL सक्षम करना और कॉन्फ़िगर करना: WSL 2 की मूल स्थापना और कॉन्फ़िगरेशन पूरा करें।
  2. कमांड उपलब्ध होना इंस्टॉलेशन की सफलता के बराबर नहीं है: बताता है कि wsl कमांड का चलना यह नहीं दर्शाता कि Linux सफलतापूर्वक इंस्टॉल किया जा सकता है।
  3. इंस्टॉलेशन विफलता का समाधान: कॉन्फ़िगरेशन पूरा होने के बाद भी इंस्टॉलेशन विफल होने पर जाँच और मरम्मत के तरीके।

1. WSL सक्षम करना और कॉन्फ़िगर करना ​

यह अध्याय आपको आवश्यक मूल सेटिंग्स पूरी करने में मार्गदर्शन करेगा। यह अध्याय पूरा करने के बाद, कमांड उपलब्ध होने और इंस्टॉलेशन सफल होने के बीच का अंतर समझने के लिए अध्याय 2 पढ़ें; यदि इंस्टॉलेशन में अभी भी समस्या आती है, तो अध्याय 3 देखें।

1.1 सिस्टम आवश्यकताएँ जाँचें ​

WSL 2 के लिए Windows संस्करण की न्यूनतम आवश्यकताएँ हैं। अपना संस्करण जाँचने के लिए Win + R दबाएँ और winver दर्ज करें:

  • Windows 10: संस्करण 1903 या उससे अधिक, और बिल्ड (Build) 18362 या उससे अधिक होना चाहिए।
  • Windows 11: सभी संस्करण समर्थित हैं।

IMPORTANT

यदि आपका संस्करण बहुत पुराना है, तो पहले "Windows Update" के माध्यम से अपने सिस्टम को अपग्रेड करें।

1.2 हार्डवेयर वर्चुअलाइज़ेशन सक्षम करें ​

WSL 2 वर्चुअलाइज़ेशन तकनीक पर चलता है, इसलिए मदरबोर्ड के BIOS/UEFI में वर्चुअलाइज़ेशन तकनीक (Virtualization Technology) सक्षम होनी चाहिए।

  • जाँच विधि: "टास्क मैनेजर" खोलें -> "प्रदर्शन" टैब -> "CPU"।
  • स्थिति देखें: सुनिश्चित करें कि नीचे दाईं ओर "वर्चुअलाइज़ेशन" की स्थिति "सक्षम" दिखाई देती है।
  • सक्षम करने का तरीका: यदि सक्षम नहीं है, तो आपको कंप्यूटर पुनः प्रारंभ करके BIOS/UEFI सेटिंग्स में जाना होगा, Intel VT-x या AMD-V जैसा विकल्प ढूँढकर उसे Enabled पर सेट करना होगा।

1.3 Windows संबंधित सुविधाएँ सक्षम करें ​

आपको Windows की "Windows Subsystem for Linux" और "Virtual Machine Platform" सुविधाएँ सक्षम करनी होंगी।

विधि A: ग्राफिकल इंटरफ़ेस के माध्यम से (अनुशंसित) ​

  1. Win + S दबाएँ, "Windows सुविधाएँ चालू या बंद करें" खोजें और खोलें।
  2. निम्नलिखित दो विकल्पों पर निशान लगाएँ:
    • Windows Subsystem for Linux
    • Virtual Machine Platform
  3. "ठीक है" पर क्लिक करें, और संकेत मिलने पर कंप्यूटर पुनः प्रारंभ करें।

विधि B: कमांड लाइन के माध्यम से (एडमिनिस्ट्रेटर अनुमतियाँ) ​

PowerShell को एडमिनिस्ट्रेटर के रूप में चलाएँ और निम्नलिखित कमांड निष्पादित करें:

powershell
# WSL सक्षम करें
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

# वर्चुअल मशीन प्लेटफ़ॉर्म सक्षम करें
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

निष्पादन पूरा होने के बाद, कृपया मैन्युअल रूप से कंप्यूटर पुनः प्रारंभ करें।

1.4 WSL कर्नेल इंस्टॉल या अपडेट करें ​

आधुनिक Windows संस्करण Microsoft Store के माध्यम से WSL अपडेट प्राप्त कर सकते हैं।

  • डाउनलोड पता: Microsoft Store - Windows Subsystem for Linux
  • मैनुअल डाउनलोड: यदि स्टोर का उपयोग नहीं कर सकते, तो WSL GitHub Releases से नवीनतम .msixbundle या .msi इंस्टॉलेशन पैकेज डाउनलोड करके ऑफ़लाइन इंस्टॉल कर सकते हैं।

1.5 WSL 2 को डिफ़ॉल्ट संस्करण के रूप में सेट करें ​

यह सुनिश्चित करने के लिए कि नए इंस्टॉल किए गए वितरण डिफ़ॉल्ट रूप से WSL 2 का उपयोग करें, टर्मिनल में निष्पादित करें:

powershell
wsl --set-default-version 2

1.6 सामान्य समस्याएँ ​

  • त्रुटि 0x80370102: आमतौर पर BIOS में वर्चुअलाइज़ेशन सक्षम न होने, या Hyper-V के साथ संघर्ष के कारण होता है।
  • WSL 1 और WSL 2 के बीच स्विच करना: आप wsl --set-version <वितरण का नाम> 2 का उपयोग करके मौजूदा WSL 1 इंस्टेंस को WSL 2 में अपग्रेड कर सकते हैं।

2. कमांड उपलब्ध होना इंस्टॉलेशन की सफलता के बराबर नहीं है ​

wsl --version, wsl -l -v जैसी कमांड का सामान्य रूप से चलना, यह बिल्कुल नहीं दर्शाता कि Linux इंस्टॉल करने की शर्तें पूरी हो चुकी हैं। ये दोनों अलग-अलग चरण हैं, इन्हें एक समान नहीं माना जा सकता।

कमांड उपलब्ध होना केवल यह बताता है:

  • ✅ Windows में WSL घटक सक्षम/इंस्टॉल हो चुके हैं
  • ✅ wsl.exe कमांड-लाइन टूल उपलब्ध है
  • ✅ सिस्टम WSL से संबंधित कमांड पहचान सकता है

लेकिन Linux वितरण को सफलतापूर्वक इंस्टॉल करने के लिए अतिरिक्त शर्तें पूरी करनी होती हैं। जिन जगहों पर आमतौर पर अटकता है:

  1. वर्चुअलाइज़ेशन बंद है: BIOS/UEFI में VT-x / AMD-V सक्षम नहीं है, WSL 2 प्रारंभ नहीं हो सकता, या वितरण इंस्टॉल करते समय वर्चुअलाइज़ेशन त्रुटि रिपोर्ट होती है (जाँच विधि के लिए 1.2 हार्डवेयर वर्चुअलाइज़ेशन सक्षम करें देखें)।
  2. Windows संस्करण/बिल्ड बहुत पुराना है: WSL 2 के लिए कर्नेल और संस्करण की आवश्यकताएँ हैं; होम एडिशन या बहुत पुरानी एंटरप्राइज़ इमेज में सुविधाएँ अधूरी हो सकती हैं (जाँच विधि के लिए 1.1 सिस्टम आवश्यकताएँ जाँचें देखें)।
  3. अभी तक कोई Linux वितरण इंस्टॉल नहीं किया गया है: wsl -l -v केवल इंस्टॉल किए गए वितरणों की सूची दिखाता है; जब कुछ भी इंस्टॉल नहीं होता तो सूची खाली होती है, इसका मतलब यह नहीं कि Ubuntu सीधे चलाया जा सकता है।
  4. नेटवर्क / Microsoft Store समस्या: wsl --install -d <वितरण> के लिए स्टोर या नेटवर्क से इमेज डाउनलोड करनी होती है; कंपनी नेटवर्क, प्रॉक्सी, फ़ायरवॉल इसे रोक सकते हैं।
  5. अनुमतियाँ अपर्याप्त: वितरण इंस्टॉल करने या WSL सेटिंग्स बदलने के लिए एडमिनिस्ट्रेटर अनुमतियाँ आवश्यक हैं।

TIP

सीधे शब्दों में: WSL कमांड चल सकना ≠ Linux तैयार होना, केवल "प्रवेश टिकट" मिला है, सिस्टम अभी तक वास्तव में इंस्टॉल नहीं हुआ है।

3. इंस्टॉलेशन विफलता का समाधान करें ​

अध्याय 1 के अनुसार कॉन्फ़िगरेशन पूरा करने के बाद (या यदि आपको लगता है कि आपने कॉन्फ़िगरेशन पूरा कर लिया है), फिर भी wsl --install विफल होता है, तो निम्नलिखित क्रम में जाँच करें।

3.1 पहले "एक-क्लिक जाँच" करें ​

PowerShell को एडमिनिस्ट्रेटर के रूप में चलाएँ और क्रम से निष्पादित करें:

powershell
wsl --install --no-distribution
wsl --set-default-version 2
  • ✅ यदि ये दोनों कमांड सुचारू रूप से चल जाती हैं, तो WSL वैकल्पिक घटक सक्षम हैं और वर्चुअलाइज़ेशन की शर्तें मूल रूप से पूरी हो गई हैं।
  • ❌ यदि विफल होती हैं, तो सीधे बताया जाएगा कि क्या कमी है (जैसे वर्चुअल मशीन प्लेटफ़ॉर्म, Hyper-V, BIOS वर्चुअलाइज़ेशन आदि)।

फिर systeminfo चलाएँ और आउटपुट में Virtualization Enabled In Firmware: Yes दिखना सुनिश्चित करें। यदि उपरोक्त सभी में कोई त्रुटि नहीं है, तो मूल रूप से निश्चिंत होकर wsl --install से वितरण इंस्टॉल किया जा सकता है।

NOTE

कोई भी कमांड 100% गारंटी नहीं दे सकती कि wsl --install निश्चित रूप से सफल होगा, लेकिन उपरोक्त जाँचों से पुष्टि हो सकती है कि इंस्टॉलेशन की शर्तें पूरी हैं या नहीं।

3.2 मैन्युअल जाँच सूची ​

यदि "एक-क्लिक जाँच" से समस्या का पता नहीं चल पाता, तो एक-एक करके जाँच करें:

  1. BIOS/फ़र्मवेयर वर्चुअलाइज़ेशन चालू है या नहीं जाँचें: एडमिनिस्ट्रेटर PowerShell में systeminfo चलाएँ, आउटपुट में Virtualization Enabled In Firmware: Yes दिखना चाहिए।
  2. Windows सुविधाएँ चालू हैं या नहीं जाँचें:
    powershell
    Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    Get-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
    दोनों कमांड की स्थिति Enabled होनी चाहिए।
  3. WSL उपलब्ध है या नहीं जाँचें: wsl --version चलाने पर सामान्य आउटपुट मिलना चाहिए; यदि कमांड नहीं मिलने का संकेत मिलता है, तो WSL घटक इंस्टॉल नहीं हैं, कृपया अध्याय 1 पर वापस जाएँ।
  4. WSL 2 का उपयोग कर पाना जाँचें (कर्नेल और वर्चुअल मशीन प्लेटफ़ॉर्म): wsl --set-default-version 2 चलाने पर सफलतापूर्वक वापस आना चाहिए। सामान्य विफलता कारण: वर्चुअल मशीन प्लेटफ़ॉर्म सक्षम न होना, या BIOS में VT-x / AMD-V चालू न होना।

3.3 सामान्य विफलता कारणों की त्वरित जाँच ​

स्थितिविवरणसमाधान
BIOS में वर्चुअलाइज़ेशन चालू नहींनिश्चित रूप से विफलपुनः प्रारंभ करके BIOS में VT-x / AMD-V चालू करें (देखें 1.2)
Windows 10, 19041 से नीचेwsl --install समर्थित नहींसिस्टम अपग्रेड करें (देखें 1.1)
एंटरप्राइज़ परिवेश में Hyper-V / वर्चुअलाइज़ेशन अक्षमसंभवतः विफलसिस्टम एडमिनिस्ट्रेटर से संपर्क करें
पुराना होम एडिशन सिस्टममैन्युअल इंस्टॉल आवश्यक1.4 के अनुसार WSL कर्नेल मैन्युअल रूप से इंस्टॉल करें

3.4 त्रुटि 0xc03a0014: वर्चुअल डिस्क समर्थन प्रदाता नहीं मिला ​

त्रुटि संदेश है Cannot find a virtual disk support provider for the specified file। यह Linux वितरण की समस्या नहीं है, बल्कि Windows का VHD/VHDX वर्चुअल डिस्क स्टैक ठीक से काम नहीं कर रहा है, WSL 2 वितरण पंजीकृत करते समय और ext4.vhdx बनाते/माउंट करते समय विफल होता है।

पहले न्यूनतम जाँच करें: PowerShell को एडमिनिस्ट्रेटर के रूप में चलाकर New-VHD परीक्षण करें (उदाहरण: New-VHD -Path C:\test.vhdx -SizeBytes 1GB)। यदि यह कमांड भी वही त्रुटि रिपोर्ट करती है, तो समस्या 100% Windows की ओर है, वितरण से संबंधित नहीं है।

निम्नलिखित क्रम में जाँच कर मरम्मत करें:

  1. Virtual Disk सेवा नहीं चल रही: services.msc खोलें, Virtual Disk सेवा ढूँढें, स्टार्टअप प्रकार "स्वचालित" पर सेट करें और उसे प्रारंभ करें।

  2. WSL / वर्चुअल मशीन प्लेटफ़ॉर्म सुविधाएँ सक्षम नहीं (या प्रभावी नहीं): 1.3 Windows संबंधित सुविधाएँ सक्षम करें में दिए गए कमांड फिर से चलाएँ, फिर पुनः प्रारंभ करना अनिवार्य है। Windows होम एडिशन में पूर्ण Hyper-V नहीं होता, लेकिन WSL 2 के लिए केवल वर्चुअल मशीन प्लेटफ़ॉर्म आवश्यक है, Hyper-V प्रबंधन इंटरफ़ेस नहीं।

  3. वर्चुअल डिस्क ड्राइवर/डिवाइस अनुपस्थित: डिवाइस मैनेजर खोलें, "सिस्टम डिवाइस / स्टोरेज कंट्रोलर" में निम्न की उपस्थिति जाँचें:

    • Microsoft Virtual Disk Provider
    • Microsoft Virtual Drive Enumerator
    • Microsoft VHD Loopback Controller

    अनुपस्थित होने पर hdwwiz.exe से मैन्युअल रूप से जोड़ा जा सकता है (स्टोरेज कंट्रोलर → Microsoft → Microsoft VHD लूपबैक कंट्रोलर), और सुनिश्चित करें कि FsDepends सेवा अक्षम नहीं है।

  4. आयातित इमेज WSL आवश्यकताओं को पूरा नहीं करती: wsl --import --vhd का उपयोग करते समय, VHDX ext4 फ़ाइल सिस्टम होना चाहिए; LUKS एन्क्रिप्टेड डिस्क, साधारण raw.img, Live ISO या NTFS/FAT से फ़ॉर्मेट की गई खाली डिस्क नहीं हो सकती। .img / .qcow2 / .iso को सीधे wsl --import --vhd से नहीं चलाया जा सकता।

  5. पथ/अनुमतियाँ/फ़ाइल सिस्टम समस्याएँ: लक्ष्य निर्देशिका NTFS डिस्क पर होनी चाहिए (FAT32/exFAT नहीं चलेगा); पथ में चीनी अक्षर, स्पेस और विशेष प्रतीकों से बचें; नेटवर्क ड्राइव, OneDrive, संपीड़ित फ़ोल्डर से आयात न करें; निश्चित रूप से वास्तविक एडमिनिस्ट्रेटर PowerShell का उपयोग करें (सामान्य टर्मिनल नहीं)।

  6. सिस्टम घटक क्षतिग्रस्त: क्रम से DISM और SFC चलाकर सिस्टम घटकों की मरम्मत करें, फिर दोबारा प्रयास करें:

    powershell
    DISM.exe /Online /Cleanup-Image /RestoreHealth
    sfc /scannow

TIP

तृतीय-पक्ष वर्चुअल मशीन (VirtualBox, VMware) या सुरक्षा सॉफ़्टवेयर के सैंडबॉक्स/सख्तीकरण फ़ंक्शन (जैसे 360, हुओरोंग) वर्चुअल डिस्क संचालन में बाधा डाल सकते हैं; समस्या निवारण के दौरान उन्हें अस्थायी रूप से बंद करके फिर से प्रयास करें।