The Problem
WSL — the Windows Subsystem for Linux — runs a real Linux kernel inside Windows 11, so you get bash, apt, and Linux tooling without dual-booting or setting up a virtual machine by hand. On a current build the whole installation is one command.
It fails for a small, predictable set of reasons: hardware virtualization is switched off in firmware, the two optional Windows features it depends on are not enabled, or the WSL kernel component is out of date. Each has a distinct error code, and the codes below tell you which one you have.
Want a full virtual machine with its own desktop instead? That is a different tool — see how to enable Hyper-V in Windows 11.
Symptoms
wsl --installreports the command is not recognised.- Installation stops with
0x80370102— the virtual machine could not be started. WslRegisterDistribution failed with error: 0x800701bc— the WSL 2 kernel needs updating.0x8007019e— the Windows Subsystem for Linux feature is not enabled.- Ubuntu installs but the terminal closes immediately on launch.
Step 1: Check the Requirements
- Press Windows + R, type
winver, press Enter. You need Windows 11 (any build) or Windows 10 build 19045 or later. - Open Task Manager → Performance → CPU and look for Virtualization: Enabled at the bottom right. If it says Disabled, fix that first — go to Step 4.
- WSL needs a 64-bit CPU with virtualization support. Every processor sold in the last decade qualifies.
- Check your specs if unsure: how to check your PC specs.
- Windows 11 Home is fully supported. Unlike Hyper-V, WSL does not require Pro.
Step 2: Install With One Command
- Right-click Start → Terminal (Admin).
- Run:
wsl --install - This enables both required features, downloads the Linux kernel, sets WSL 2 as the default, and installs Ubuntu.
- Restart the PC when it tells you to — the installation is not finished until you do.
- After the reboot, an Ubuntu window opens and asks you to create a username and password. The password is for Linux
sudoand is unrelated to your Windows account. Nothing appears as you type it; that is normal for Linux.
Step 3: Enable the Features Manually If That Failed
If wsl --install is not recognised, or you saw 0x8007019e, turn the features on directly.
- Press Windows + R, type
optionalfeatures, press Enter. - Tick Windows Subsystem for Linux and Virtual Machine Platform. Leave Hyper-V alone — WSL does not need the full role.
- Click OK and restart.
- Or from Terminal (Admin):
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestartdism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart - Restart, then run
wsl --installagain.
Step 4: Enable Virtualization in Firmware
Error 0x80370102 means the CPU's virtualization extensions are switched off. This is a firmware setting, not a Windows one.
- Enter firmware setup: how to enter BIOS or UEFI.
- Look for Intel Virtualization Technology / VT-x on Intel boards, or SVM Mode on AMD boards — usually under Advanced, CPU Configuration, or Security.
- Set it to Enabled, save, and exit.
- Confirm in Task Manager → Performance → CPU that Virtualization now reads Enabled.
- Full walkthrough including where each vendor hides it: how to enable virtualization (VT-x / AMD-V) in the BIOS.
Step 5: Update the WSL Kernel
Error 0x800701bc means the kernel component is missing or old.
- In Terminal (Admin):
wsl --update - Then set the default version explicitly:
wsl --set-default-version 2 - If
wsl --updatefails, download the WSL2 Linux kernel update package from Microsoft's official documentation and run the installer. - Check what you have with:
wsl --version
Step 6: Choose and Install a Distribution
- List what is available:
wsl --list --online - Install a specific one:
wsl --install -d Ubuntu-24.04 - Debian, Kali, openSUSE, and Oracle Linux are all available the same way.
- See what you already have installed, and which version each uses:
wsl --list --verbose - Convert an older WSL 1 distribution to WSL 2:
wsl --set-version Ubuntu 2
Step 7: Fix the Remaining Common Errors
- "The requested operation could not be completed due to a virtual disk system limitation" — the distribution's virtual disk is in a compressed or encrypted folder. Right-click the folder → Properties → Advanced → untick Compress contents to save disk space.
- Terminal opens and closes instantly — reset the distribution: Settings → Apps → Installed apps → the distro → Advanced options → Reset. This erases its files, so export first (Step 8).
- No internet inside WSL — restart the subsystem from Terminal:
Then reopen it. If DNS is still broken, a VPN is usually the cause; disconnect and retry.wsl --shutdown - Conflicts with VirtualBox or VMware — older versions cannot share the hypervisor with WSL 2. Update them to a current release. Related: fix error 0x80004005.
- Memory integrity blocking it — Windows Security → Device security → Core isolation details. Try turning Memory integrity off, reboot, and retest.
Step 8: Learn the Handful of Commands Worth Knowing
- Reach your Windows files from inside Linux at
/mnt/c/Users/<yourname>. - Reach your Linux files from Windows by typing
\\wsl$into File Explorer's address bar. - Stop everything cleanly — the correct way to restart WSL:
wsl --shutdown - Back a distribution up before doing anything risky:
and restore it with:wsl --export Ubuntu D:\ubuntu-backup.tarwsl --import Ubuntu D:\wsl\Ubuntu D:\ubuntu-backup.tar - Remove one completely:
⚠️ This permanently deletes that distribution and everything in it, with no recycle bin. Export first.wsl --unregister Ubuntu
What Not to Do
- Don't edit files in
\\wsl$with Windows tools that rewrite line endings unless you mean to. Mixed CRLF and LF endings break shell scripts in confusing ways. - Don't store project files under
/mnt/cif you care about speed. Cross-filesystem access is much slower than keeping them inside the Linux filesystem. - Don't run
wsl --unregisterto "reset" a distribution. It deletes everything. Export first. - Don't leave memory integrity off permanently if turning it off was only a test — it is a genuine security protection.
Still Not Working?
If virtualization is enabled in firmware, both features are on, the kernel is current, and installation still fails, check whether an employer policy or a third-party security suite is blocking the hypervisor. Repair Windows itself as a last step: how to run SFC and DISM.
Related: how to enable Hyper-V in Windows 11, how to use Task Scheduler, and how to check your PC specs.
Related guides
How to Enable Hyper-V in Windows 11
Hyper-V lets you run virtual machines natively in Windows 11 Pro. Here is how to turn it on, create your first VM, and avoid the conflicts it causes.
How to Use Task Scheduler in Windows 11
Task Scheduler runs scripts, backups, and cleanups automatically. Here is how to build a task that actually fires, and how to fix one that silently doesn't.
How to Enable Virtualization (VT-x / AMD-V) in the BIOS
Emulators, WSL, and virtual machines all need CPU virtualization switched on in firmware. Here is where each manufacturer hides the setting.
How to Enter BIOS or UEFI Settings in Windows 11
Need to change boot order, enable TPM, or turn off XMP? Here is how to enter BIOS or UEFI on Windows 11 from inside Windows and with the setup key at startup.
How to Install Windows 11 on an Unsupported PC
PC blocked by the TPM 2.0 or CPU requirement? Install Windows 11 on unsupported hardware safely, understand the risks, and keep your files, step by step.