If you’re trying to install or run Linux on Windows through WSL (Windows Subsystem for Linux) and hit this error:
The operation could not be started because a required feature is not installed.
Error: Wsl/InstallDistro/Service/RegisterDistro/CreateVm/HCS_E_SERVICE_NOT_AVAILABLE
This usually means Windows can’t fire up the small virtual machine it uses to run WSL 2. The good news? In most cases, you can fix it in a few minutes.

What Causes This WSL Error?
WSL 2 runs a lightweight virtual machine (VM) to power your Linux environment. If Windows can’t start that VM, it throws the error above.
This usually happens because one or more of these pieces are missing or turned off:
- Virtualization isn’t enabled in your BIOS/UEFI.
- Virtual Machine Platform (VMP) and Windows Subsystem for Linux features aren’t installed in Windows.
- The Hyper-V hypervisor is turned off or blocked.
- The service that runs the Hyper-V containers (called Host Compute Service) isn’t running.
Quick Troubleshooting Steps
Run through these checks first. They solve the problem for most people:
Virtualization is off in BIOS
- How to check: Go to Task Manager > Performance tab and look for “Virtualization: Disabled.”
- How to fix: Restart your PC, enter BIOS (often Del, F2, or F10), and turn on virtualization (Intel VT-x, AMD-V, or SVM). Save and reboot.
Virtual Machine Platform is missing
- How to check: Open PowerShell and run:
dism /online /get-features
- How to fix: Enable it with:
dism /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Hyper-V hypervisor is off
- How to check: Run:
bcdedit
and look for “hypervisorlaunchtype.”
- How to fix: If it says “Off,” run:
bcdedit /set hypervisorlaunchtype auto
Then restart your PC.
Host Compute Service is stopped
- How to check: Go to
services.msc
and look for “Hyper-V Host Compute Service.” - How to fix: Right-click it and choose Start. Also set it to Automatic.
WSL kernel is outdated
- How to check: Run:
wsl --status
- How to fix: Update it with:
wsl --update
If those are all fine, WSL usually starts working again.
How To Fix It Step By Step
Here’s the full fix. Follow these steps in order.
1. Turn On Virtualization In BIOS
- Restart your PC and enter BIOS/UEFI (usually with Del, F2, or F10).
- Find Intel VT-x, SVM, or AMD-V settings.
- Enable it.
- Save and reboot.
In Windows, check Task Manager > Performance tab to confirm “Virtualization” is now “Enabled.”
2. Install Virtual Machine Platform And WSL
Open PowerShell as Administrator and run:
dism /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Restart your PC after running those commands.
3. Force Hyper-V To Load
Run this in PowerShell as Admin:
bcdedit /set hypervisorlaunchtype auto
Restart again.
4. Update WSL
Make sure you’re running the latest WSL:
wsl --update
wsl --shutdown
5. Try Launching Or Reinstalling Your Distro
Launch your distro:
wsl -d <YourDistroName>
Still broken? Reinstall your distro:
wsl --unregister <YourDistroName>
wsl --install -d <YourDistroName>
Important: Reinstalling deletes your Linux files. Back them up first with:
wsl --export <YourDistroName> C:\Backups\mydistro.tar
If It’s Still Not Working…
If none of the above helps, try these deeper fixes:
Check The Hyper-V Host Compute Service
- Open
services.msc
. - Find Hyper-V Host Compute Service (vmcompute).
- Right-click > Start it.
- Set it to Automatic.
Reset Features After Windows Updates
Sometimes Windows Updates mess things up. Here’s a trick that often fixes stubborn issues:
- Go to Turn Windows features on or off.
- Uncheck:
- Virtual Machine Platform
- Hyper-V
- Restart.
- Check them again.
- Restart one more time.
This refreshes the internal settings.
Watch Out For VirtualBox And VMware Conflicts
Older versions of VirtualBox (before 6.1) or VMware Workstation (before 15.5.5) don’t play nice with Hyper-V. Either update them or uninstall them temporarily. Test WSL. Then reinstall newer versions that support Hyper-V.
Security Settings May Interfere
Security software, exploit protection, or even Windows Core Isolation might block Hyper-V:
- Check Windows Security > Core Isolation. Try turning off Memory Integrity temporarily.
- Check Exploit Protection settings for:
vmcompute.exe
vmwp.exe
Reset them to default if they’re customized.
Running WSL Inside A Virtual Machine?
If you’re running WSL inside another VM (like on Hyper-V), you’ll need to enable nested virtualization:
Set-VMProcessor -VMName "<VMName>" -ExposeVirtualizationExtensions $true
Some cloud services (like certain Azure configurations) don’t support this yet.
Delete Custom WSL Configs
If you tinkered with .wslconfig
or custom kernels, try removing them:
- Delete or rename
%USERPROFILE%\.wslconfig
.
Then restart WSL.
AMD Ryzen Systems
On some AMD Ryzen laptops, virtualization features like SVM may be disabled in BIOS by default, even on high-end systems. If you’re using a Ryzen device and still facing this error after the standard fixes, consider the following:
- Check for the latest BIOS updates from your laptop manufacturer.
- Ensure SVM Mode or AMD-V is enabled in the BIOS.
- If virtualization issues persist, try temporarily disabling Core Isolation in Windows Security.
These steps often resolve persistent virtualization errors on Ryzen hardware.
Best Practices for WSL Health and Performance
To keep WSL trouble-free:
- Run
wsl --update
regularly. - Keep Windows updated.
- Don’t disable Virtual Machine Platform unless you really need to.
- Keep VMware and VirtualBox up to date.
FAQ
Q. Will I lose my Linux files if I fix WSL?
- No. Your Linux files live in virtual disks stored under
%LOCALAPPDATA%\Packages
. Fixing Hyper-V won’t erase them unless you explicitly uninstall your distro.
Q. Do I have to use Hyper-V for WSL?
- For WSL 2, yes. You can downgrade to WSL 1 if you want to avoid Hyper-V, but it’s slower and has fewer features.
Q. Does Secure Boot or BitLocker block WSL?
- Not usually. But strict enterprise security policies can sometimes block virtualization.