Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is Hyper-V necessary or not for WSL2? Can it be activated on Windows 10 Home? #899

Closed
oxfos opened this issue Sep 10, 2020 · 10 comments · Fixed by #1914
Closed

Is Hyper-V necessary or not for WSL2? Can it be activated on Windows 10 Home? #899

oxfos opened this issue Sep 10, 2020 · 10 comments · Fixed by #1914

Comments

@oxfos
Copy link

oxfos commented Sep 10, 2020

SITUATION

I'm trying to install WSL 2.

I have Microsoft Windows 10 Home [Version 10.0.19041.508]
I already have WSL 1 and Ubuntu 18.04 working.

I have followed all instructions here and tried solutions explained here to no avail (see results below).

My features

windowsfeatures

Some trials and outcomes

Capture
noHvpresent

REMARKS

If Hyper-V is indeed required for WSL 2, I discovered here that on Windows 10 Home it cannot be activated:

notonhome

However, the FAQ here says:

includinghome

QUESTIONS

  1. Is Hyper-V required or not for WSL 2?
  2. Can Hyper-V be activated or not on Windows 10 Home?

Thank you for any suggestion.


Document Details

Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

@onomatopellan
Copy link

  1. No, for WSL2 you only need "Virtual Machine Platform" (a subset of Hyper-V) and "Windows Subsystem for Linux" features, both available in Home edition.
  2. No. Full Hyper-V is not available in Home.

"Please enable the Virtual Machine Platform windows feature and ensure virtualization is enabled in the BIOS" could be a misleading error message. What's your CPU?
If the CPU lacks some capabilities like SLAT it won't work. microsoft/WSL#4709

@oxfos
Copy link
Author

oxfos commented Sep 11, 2020

@onomatopellan thank you.
CPU: Intel Core i5-8265U CPU @ 1.60 GHz
In addition:
image

I run the Intel Processor Identification Utility. It indicates that SLAT is supported:
image

@oxfos
Copy link
Author

oxfos commented Sep 11, 2020

I found the solution.

The virtualization technology was disabled and had to be enabled in the BIOS:
InkedIMG_20200911_082120809_copy_LI

Now it works:
image

Btw you don't see any changes in the enabled features:
image

@onomatopellan Thank you again for pointing me in the right direction.

@oxfos oxfos closed this as completed Sep 11, 2020
@thecriticalpoint
Copy link

This was helpful. Thank you.

@tinoweb
Copy link

tinoweb commented Sep 1, 2022

thanks gays help me a lot

@osm2po
Copy link

osm2po commented Sep 11, 2022

There is a working hack which gives you this here.
(my box is a 10 years old AMD/Asus-Board with Win-Home-10)
grafik

@hannah23280
Copy link

So based on the above, can we conclude, to run linux containers, we don't need windows 10 pro, since windows 10 home already have WSDL + Virtual Machine Platform" (a subset of Hyper-V) (with Virtualization Technology enabled in the bios).

To run windows containers , we will need windows 10 pro. With windows 10 pro, it either use Hyper-V to run windows containers OR natively run windows containers without Hyper-V. The latter requires us to enable the "containers" checkbox in the "Turn Windows Feature on or off"

Hope my understand is right.

@laoshaw
Copy link

laoshaw commented Dec 25, 2022

what about kvm inside WSL2? is hyper-v required for that? I could not get kvm working under windows10|wsl2(newest release 22H2) even after I reconfigured the kernel with kvm_intel support.

@picofaradpjf
Copy link

@laoshaw my research into this says you need nested virtualization to run kvm inside wsl2 and that only is possible in Windows 11 at this time.

@DanKaplanSES
Copy link
Contributor

In my opinion this should be reopened. The FAQ is as unclear today as it was then. @onomatopellan 's information should be included in the FAQ to clarify for others. I'll submit a PR.

DanKaplanSES added a commit to DanKaplanSES/WSL-docs that referenced this issue Jan 29, 2024
mattwojo pushed a commit that referenced this issue Feb 22, 2024
* FAQ: Split Hyper-V and Windows Home questions into two

Fixes #899

* FAQ: clarify WSL features need to be enabled
mattwojo added a commit that referenced this issue Feb 22, 2024
* Fixing small formatting and writing errors. (#1863)

* Fix broken code block and bookmark link (#1866)

* Fix broken code block

* Update broken wslconfig bookmark

* Update install-on-server.md (#1871)

Fix indent and numbering for better readability.

* Fix punctuation errors (#1876)

* small improvements in troubleshooting.md (#1877)

Some small formatting improvements.
Also added the command to restart the hns service.

* Fix a few typos (#1879)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Updated guide to fix an issue because of a wrong command (#1884)

* Update wsl-containers.md

Running Dev Containers: **Open Folder in Container...** when using this guide is not / no longer correct, as most readers will already have opened the folder while connected to WSL based on the steps provided above. We need to use **Dev Containers: Reopen in Container** or it will fail to create the .devcontainer folder and devcontainer.json and give a (unfortunately not very clear) error message.


See also: https://code.visualstudio.com/docs/devcontainers/containers#_open-a-wsl-2-folder-in-a-container-on-windows
   
- Use the Dev Containers: Reopen in Container command from a folder already opened using the WSL extension.
- Select Dev Containers: Open Folder in Container... from the Command Palette (F1) and choose a WSL folder using the local \\wsl$ share (from the Windows side).

* Update wsl-containers.md

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Update faq.yml -- tiny grammar change (#1885)

* Update faq.yml -- tiny grammar change 

'changes to locale to' -> 'changes the locale to'

* Update basic-commands.md

'If you running WSL' -> 'If you run WSL'

* Update basic-commands.md

* rephrase a long sentence
* swap order of two sentences to make example of command closer to the description of the command

example of command: `wsl --set-default-version 2`

* Update basic-commands.md

Replace 

wsl -u <Username>`, `wsl --user <Username>

with

wsl --user <Username>

`wsl -u <Username>` and `wsl --user <Username>` are equivalent. Both commands are correct for the section of the documentation, but the display of the commands in the documentation was incorrect due to the stray ticks and comma.

* Update gui-apps.md to simplify commits. (#1880)

* Update gui-apps.md

If we are already referencing apt, why not just use apt to install google chrome?

* Update gui-apps.md

forgot --fix-missing

* Add a note to explain the command flags and path

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Fix anchor warning

* Updated docs for usbipd-win updates (#1870)

* Updated docs for usbipd-win updates

* Update url to latest

Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>

* Fixes based on feedback

Thank you @dorssel !

* Remove admin requirement

Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>

* Remove x86 support

Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>

* Moving experimental settings to the experimental section (#1901)

* Moving experimental settings to the experimental section

Some networking config settings are still experimental. Moving those to the experimental section of the document so customers know how to use these settings.

* Added code ticks to new setting entries

* Update wsl-config.md

fixing settings which are no longer experimental, but the text still referred to them as experimental

* Update wsl-config.md

fixed the string referring to autoProxy. it's no longer experimental.

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Moving ms.prod and ms.technology to ms.service and ms.subservice

* Update to new feedback mechanism (#1917)

* Update to new feedback mechanism

* fix desc syntax

* Fix template link

* add svg support

* Update wsl-config.md to document the dnsProxy option (#1920)

dnsProxy is a wls2 configuration option which we need to document for customers that need to turn off the NAT DNS proxy.

* User/chdhan/networking doc update 2/21/24 (#1928)

* Signed-off-by: Chanpreet Dhanjal <chdhan@microsoft.com>

* updating troubleshooting page.

* Updating troubleshooting guide

* updating troubleshooting guide

* Editorial update, added explainer

* Update image alt text for accessibility

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Fix typo (#1924)

Github -> GitHub

* Fix typo (#1923)

Github -> GitHub

* Removed mention of deprecated content (#1915)

* FAQ: Split Hyper-V and Windows Home questions into two (#1914)

* FAQ: Split Hyper-V and Windows Home questions into two

Fixes #899

* FAQ: clarify WSL features need to be enabled

* Update wsl-plugins.md (#1913)

* Import export command clarification (#1910)

* Split the import and export commands into separate sections

- My original intent was to clarify that the export command exports a **snapshot** of the specified distribution. The way it is currently written doesn't say otherwise, but it could be interpreted to mean it exports a clean install without the user's modifications. 

    - In other words, it could be saying `wsl --export Ubuntu ubuntu.tar` is equivalent to downloading the official "ubuntu.tar" from the internet. 
- Splitting these two was not part of my original goal, merely a step along the way to achieve it.
- I decided to make this its own commit so that it can be `cherry-pick`ed if it provides value on its own but the upcoming commits do not.

* Specify that the export command exports a snapshot

* Fix orphan links to import/export command sections

* fix ambiguous wording for required win version (#1895)

Previously the docs stated that Windows version 22H2 was required, but that is wrong: microsoft/WSL#10853

it is specifically Windows *11* version 22H2 that is required.

---------

Co-authored-by: Stefan Nikolaj <51296436+snikolaj@users.noreply.github.com>
Co-authored-by: Anton Kesy <antonkesy@gmail.com>
Co-authored-by: Ishan Jain <github@ishan.jain.se>
Co-authored-by: Krishna Vivek Vitta <84629581+krishnacx@users.noreply.github.com>
Co-authored-by: icyerasor <andreas@feldschmid.com>
Co-authored-by: Blake-Madden <66873089+Blake-Madden@users.noreply.github.com>
Co-authored-by: vmsteiner <107506233+vmsteiner@users.noreply.github.com>
Co-authored-by: Andrew Zipperer <47086307+zipperer@users.noreply.github.com>
Co-authored-by: Wes Bryie <wes@wesbryie.tech>
Co-authored-by: Craig Loewen <crloewen@microsoft.com>
Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>
Co-authored-by: Keith Horton <khorton@microsoft.com>
Co-authored-by: Drew Batchelor (he/him) <drewbat@microsoft.com>
Co-authored-by: chanpreetdhanjal <68442928+chanpreetdhanjal@users.noreply.github.com>
Co-authored-by: Takashi Takebayashi <changeworld@users.noreply.github.com>
Co-authored-by: Patrick Brosset <patrickbrosset@gmail.com>
Co-authored-by: Daniel Kaplan <tieTYT@gmail.com>
Co-authored-by: Saisang Cai <Saisang@users.noreply.github.com>
Co-authored-by: jantari <jantari@outlook.de>
mattwojo added a commit that referenced this issue Mar 20, 2024
* Fixing small formatting and writing errors. (#1863)

* Fix broken code block and bookmark link (#1866)

* Fix broken code block

* Update broken wslconfig bookmark

* Update install-on-server.md (#1871)

Fix indent and numbering for better readability.

* Fix punctuation errors (#1876)

* small improvements in troubleshooting.md (#1877)

Some small formatting improvements.
Also added the command to restart the hns service.

* Fix a few typos (#1879)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Updated guide to fix an issue because of a wrong command (#1884)

* Update wsl-containers.md

Running Dev Containers: **Open Folder in Container...** when using this guide is not / no longer correct, as most readers will already have opened the folder while connected to WSL based on the steps provided above. We need to use **Dev Containers: Reopen in Container** or it will fail to create the .devcontainer folder and devcontainer.json and give a (unfortunately not very clear) error message.


See also: https://code.visualstudio.com/docs/devcontainers/containers#_open-a-wsl-2-folder-in-a-container-on-windows
   
- Use the Dev Containers: Reopen in Container command from a folder already opened using the WSL extension.
- Select Dev Containers: Open Folder in Container... from the Command Palette (F1) and choose a WSL folder using the local \\wsl$ share (from the Windows side).

* Update wsl-containers.md

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Update faq.yml -- tiny grammar change (#1885)

* Update faq.yml -- tiny grammar change 

'changes to locale to' -> 'changes the locale to'

* Update basic-commands.md

'If you running WSL' -> 'If you run WSL'

* Update basic-commands.md

* rephrase a long sentence
* swap order of two sentences to make example of command closer to the description of the command

example of command: `wsl --set-default-version 2`

* Update basic-commands.md

Replace 

wsl -u <Username>`, `wsl --user <Username>

with

wsl --user <Username>

`wsl -u <Username>` and `wsl --user <Username>` are equivalent. Both commands are correct for the section of the documentation, but the display of the commands in the documentation was incorrect due to the stray ticks and comma.

* Update gui-apps.md to simplify commits. (#1880)

* Update gui-apps.md

If we are already referencing apt, why not just use apt to install google chrome?

* Update gui-apps.md

forgot --fix-missing

* Add a note to explain the command flags and path

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Fix anchor warning

* Updated docs for usbipd-win updates (#1870)

* Updated docs for usbipd-win updates

* Update url to latest

Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>

* Fixes based on feedback

Thank you @dorssel !

* Remove admin requirement

Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>

* Remove x86 support

Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>

* Moving experimental settings to the experimental section (#1901)

* Moving experimental settings to the experimental section

Some networking config settings are still experimental. Moving those to the experimental section of the document so customers know how to use these settings.

* Added code ticks to new setting entries

* Update wsl-config.md

fixing settings which are no longer experimental, but the text still referred to them as experimental

* Update wsl-config.md

fixed the string referring to autoProxy. it's no longer experimental.

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Moving ms.prod and ms.technology to ms.service and ms.subservice

* Update to new feedback mechanism (#1917)

* Update to new feedback mechanism

* fix desc syntax

* Fix template link

* add svg support

* Update wsl-config.md to document the dnsProxy option (#1920)

dnsProxy is a wls2 configuration option which we need to document for customers that need to turn off the NAT DNS proxy.

* User/chdhan/networking doc update 2/21/24 (#1928)

* Signed-off-by: Chanpreet Dhanjal <chdhan@microsoft.com>

* updating troubleshooting page.

* Updating troubleshooting guide

* updating troubleshooting guide

* Editorial update, added explainer

* Update image alt text for accessibility

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Fix typo (#1924)

Github -> GitHub

* Fix typo (#1923)

Github -> GitHub

* Removed mention of deprecated content (#1915)

* FAQ: Split Hyper-V and Windows Home questions into two (#1914)

* FAQ: Split Hyper-V and Windows Home questions into two

Fixes #899

* FAQ: clarify WSL features need to be enabled

* Update wsl-plugins.md (#1913)

* Import export command clarification (#1910)

* Split the import and export commands into separate sections

- My original intent was to clarify that the export command exports a **snapshot** of the specified distribution. The way it is currently written doesn't say otherwise, but it could be interpreted to mean it exports a clean install without the user's modifications. 

    - In other words, it could be saying `wsl --export Ubuntu ubuntu.tar` is equivalent to downloading the official "ubuntu.tar" from the internet. 
- Splitting these two was not part of my original goal, merely a step along the way to achieve it.
- I decided to make this its own commit so that it can be `cherry-pick`ed if it provides value on its own but the upcoming commits do not.

* Specify that the export command exports a snapshot

* Fix orphan links to import/export command sections

* fix ambiguous wording for required win version (#1895)

Previously the docs stated that Windows version 22H2 was required, but that is wrong: microsoft/WSL#10853

it is specifically Windows *11* version 22H2 that is required.

* Updating troubleshooting page

* User/chdhan/wsl troubleshooting doc update 3 18 23 (#1936)

* Signed-off-by: Chanpreet Dhanjal <chdhan@microsoft.com> Upating pages to reflect support for IPV4 and IPV6

* Updated text

* Minor editorial update

We try to only use "note:" to indicate actual formatted notes.

* Minor editorial updates

---------

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

---------

Co-authored-by: Stefan Nikolaj <51296436+snikolaj@users.noreply.github.com>
Co-authored-by: Anton Kesy <antonkesy@gmail.com>
Co-authored-by: Ishan Jain <github@ishan.jain.se>
Co-authored-by: Krishna Vivek Vitta <84629581+krishnacx@users.noreply.github.com>
Co-authored-by: icyerasor <andreas@feldschmid.com>
Co-authored-by: Blake-Madden <66873089+Blake-Madden@users.noreply.github.com>
Co-authored-by: vmsteiner <107506233+vmsteiner@users.noreply.github.com>
Co-authored-by: Andrew Zipperer <47086307+zipperer@users.noreply.github.com>
Co-authored-by: Wes Bryie <wes@wesbryie.tech>
Co-authored-by: Craig Loewen <crloewen@microsoft.com>
Co-authored-by: Frans van Dorsselaer <17404029+dorssel@users.noreply.github.com>
Co-authored-by: Keith Horton <khorton@microsoft.com>
Co-authored-by: Drew Batchelor (he/him) <drewbat@microsoft.com>
Co-authored-by: chanpreetdhanjal <68442928+chanpreetdhanjal@users.noreply.github.com>
Co-authored-by: Takashi Takebayashi <changeworld@users.noreply.github.com>
Co-authored-by: Patrick Brosset <patrickbrosset@gmail.com>
Co-authored-by: Daniel Kaplan <tieTYT@gmail.com>
Co-authored-by: Saisang Cai <Saisang@users.noreply.github.com>
Co-authored-by: jantari <jantari@outlook.de>
Co-authored-by: Chanpreet Dhanjal <chdhan@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

9 participants