17

I'm trying to install WSL2, but getting error above. Virtual Machine platform and Windows subsystem for linux are enabled, also kernel update installed. In BIOS intel virtualization is enabled. How to fix that?

5 Answers 5

9

It's worth verifying the machine meets the hardware requirements.

Buried in the WSL troublshooting page under "Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS" the first item is to check Hyper-V System Requirements.

WSL 2 uses a subset of Hyper-V for virtualization, so while you don't need Win 10 Pro, you do still need the hardware to be able to run Hyper-V.

At the time of writing, the docs say Hyper-V requires the following:

  • 64-bit Processor with Second Level Address Translation (SLAT).
  • CPU support for VM Monitor Mode Extension (VT-x on Intel CPU's).
  • Minimum of 4 GB memory. As virtual machines share memory with the Hyper-V host, you will need to provide enough memory to handle the expected virtual workload.

A quick way to check requirements: run msinfo32.exe and under System Summary at the very bottom it notes the Hyper-V requirements:

The MS info system summary section showing the Hyper-V items and values

...in my case, I'm out of luck as my processor lacks SLAT.

5
  • 6
    thanks, for me it was "Virtualization Enabled in Firmware - No", which was easy to change in BIOS.
    – Maksim
    Commented Nov 7, 2020 at 11:04
  • Mine already has Yes for all 4 of those, and I haven't found a Limit CPUID Max setting in my BIOS (as mentioned in another answer on this page).
    – Ryan
    Commented Jun 15, 2021 at 19:12
  • I finally figured out how to get WSL 2 working (after months of effort)! askubuntu.com/a/1346121/48214
    – Ryan
    Commented Jun 15, 2021 at 19:33
  • 1
    @Ryan I don’t know what issue you’re running into but if these are all checked then I don’t think hardware is the problem, which is all this answer addresses ;) Commented Jun 15, 2021 at 19:49
  • BTW, VirtualBox doesn't support nested virtual machines, so only VMWare can run it (example use case: docker for windows).
    – JayDi
    Commented Aug 31, 2021 at 6:56
7

The issue might be that virtualisation is disabled in you compute. To enable, follow these steps:

  1. Open a PowerShell console as Administrator.
  2. Run the following command:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

Ref: Microsoft's enable Hyper-V Docs

If still had this error, make sure hyper-V in CPU is enabled. For AMD CPUs, it's called SVM (in BIOS).

2
  • Worked like a charm!
    – Akhil Jain
    Commented Nov 18, 2021 at 1:12
  • I would like to add that I had enabled Hyper-V throught the "Windows Componentes" GUI, and still faced the OP problem. Running this command solved the problem.
    – fepzzz
    Commented Mar 16, 2022 at 13:47
3

The problem was in BIOS. You need to disable Limit CPUID Max to get it work.

5
  • Same problem, same error number, but my BIOS has no such setting, What then, or might it have another name?
    – user5175034
    Commented Jun 27, 2020 at 7:57
  • @DonP try to disable and then enable Virtualization in BIOS
    – FoxPro
    Commented Jun 28, 2020 at 1:28
  • Just had look and there is nothing at all like that in my BIOS so maybe my PC and BIOS are too old as the BIOS is dated 2009 and is the latest that exists for this computer. It runs Ubuntu Studio very well but not WSL2.
    – user5175034
    Commented Jun 29, 2020 at 23:06
  • @DonP yeah it can be also problem with sse4.1 or sse4.2, btw i do not exactly requirements of wsl2.
    – FoxPro
    Commented Jul 12, 2020 at 20:05
  • Mine already has Yes for all 4 of the features shown at stackoverflow.com/a/63270858/470749, and I haven't found a Limit CPUID Max setting in my BIOS. This has been driving me crazy for months. I'm really eager to figure it out.
    – Ryan
    Commented Jun 15, 2021 at 19:13
3

If you're inside a Virtual Machine, your VM may not be setup to run nested VMs:

Windows Nested Virtualization

1
  • I voted this answer up as it helped me solve the problem. To clarify I did run command "Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true" as admin user in the Power Shell of the host(!)-system. A restart of the the VM was also required. Commented Sep 7, 2021 at 17:43
3

I went through the same situation as you. SVM(VT) is enable and Hyper-V option is enable but Can't use WSL2. My problem is rebooting problem. windows 10's reboot is not actual reboot. WSL2 does not complete installed. Try reboot with press shift key.

1
  • 2
    SVM needs to be enabled on AMD CPUs if anyone was wondering
    – Garbit
    Commented Nov 11, 2020 at 15:56

Not the answer you're looking for? Browse other questions tagged or ask your own question.