При установке WSL может возникнуть ошибка WslRegisterDistribution failed with error: 0x80370102 или Error: 0x80370102 The Virtual machine could not be started because a required feature is not installed, которые устраняются в большинстве случаях одинаково.
1. Включение вложенной виртуализации
Если вы установили Windows на виртуальную машину и пытаетесь установить WSL, то нужно включить Nested Virtualization. Для этого запустите PowerShell от имени администратора и введите ниже апплет:
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
Чтобы отключить обратно:
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $false
2. Включить поддержку Hyper-V в BIOS
Если аппаратная виртуализация отключена в BIOS, то это может создать много проблем с виртуальными машинами и также вызвать ошибку 0x80370102 при установке WSL. Для разных процессоров и материнских плат, параметр включения виртуализации в BIOS, называется по разному. Ниже пример процессор Intel на Asrock.
3. Включить Hyper-V в компонентах
Включение Hyper-V в компонентах это обязательный шаг, чтобы использовать подсистемы Windows на Linux. Для этого нажмите Win+R и введите optionalfeatures, после чего откроется окно компонентов. Далее найдите графу Hyper-V и установите галочку, после чего нажмите OK.
4. Включить платформенную виртуализацию
Платформа виртуальной машины еще один обязательный компонент, который необходимо включить, чтобы устранить ошибку 0x80370102 при запуске подсистемы Windows для Linux. Для этого нажмите Win+R и введите optionalfeatures. Далее найдите пункт Платформа виртуальной машины и установите галочку.
Смотрите еще:
- Узнать, поддерживается ли Hyper-V на ПК с Windows 11
- Hyper-V: Ошибка установки Windows при выборе 2 поколения
- Как включить TPM на Hyper-V для установки Windows 11
- Как в Windows 10 HOME включить и установить Hyper-V
- Как использовать вместе VMware, VirtualBox с Hyper-V и WSL в Windows 10
[ Telegram | Поддержать ]
Windows включила эту новую функцию, в которой пользователи могут устанавливать подсистемы Linux, просто включив функцию «Подсистема Windows для Linux». Но при загрузке дистрибутива Linux через подсистему Windows для Linux или WSL пользователи сталкиваются с этим сообщением об ошибке «WslRegistrationDistribution failed with Error: 0x80370102». Эта проблема связана с отключенной аппаратной виртуализацией в BIOS системы. Включение должно решить проблему в большинстве случаев. Если это не решит проблему, следуйте остальным решениям одно за другим.
Исправление 1. Включите аппаратную виртуализацию.
Обычно функция виртуализации отключена на всех машинах. Приходится вручную включать из BIOS.
1. Сначала щелкните правой кнопкой мыши значок Windows и нажмите «Завершение работы или выход>».
2. После этого нажмите «Перезагрузить», чтобы перезагрузить систему.
3. Во время перезагрузки, когда появится логотип производителя, нажмите и удерживайте клавишу «Удалить» на клавиатуре, чтобы получить доступ к настройкам BIOS.
ПРИМЕЧАНИЕ —
Имейте в виду, что эта кнопка для доступа к BIOS меняется от производителя к производителю, даже иногда от модели к модели.
Следите за реальной кнопкой для доступа к BIOS, пока ваш компьютер загружается.
3. После того, как BIOS В открывшемся окне перейдите на вкладку «Дополнительно» *.
4. Затем с помощью стрелок на клавиатуре выберите «Виртуализация» из списка и установите для нее значение «Включено».
[
*NOTE –
The ‘Virtualization’ option may not be present in the ‘Advanced’ tab on some computers. In that case, you will find it in the “Performance” tab.
]
5. Снова нажмите связанную с ним клавишу, чтобы сохранить настройки.
[It is the “F10” key for this computer.]
6. После этого выберите «Да», чтобы окончательно сохранить и выйти из настроек BIOS на вашем компьютере.
Ваш компьютер загрузится нормально.
ДЛЯ СИСТЕМ, РАБОТАЮЩИХ НА ЦП AMD —
1. Зайдите в настройки BIOS.
2. Здесь перейдите на вкладку «MIT».
3. Теперь перейдите в «Расширенные настройки частоты».
4. Затем нажмите «Расширенные настройки ядра».
5. Здесь вы увидите «Режим SVM» на вашем экране. Режим SVM — это режим защищенной виртуальной машины.
6. Установите для него значение «Включить», чтобы включить его.
7. Теперь вы должны выбрать «Да», чтобы наконец сохранить и выйти из настроек BIOS на вашем компьютере.
После этого дайте компьютеру загрузиться в обычном режиме. Теперь вы можете проверить, включена ли виртуализация в вашей системе.
1. Сначала щелкните правой кнопкой мыши значок Windows и нажмите «Диспетчер задач».
2. Затем перейдите на вкладку «Производительность».
3. Нажмите здесь на «CPU».
4. Теперь с правой стороны вы заметите, что для параметра «Виртуализация» установлено значение «Включено».
Теперь попробуйте снова установить дистрибутив Linux.
Исправление 2 — Убедитесь, что HyperV включен
Гипервизор должен быть включен в пользовательской системе для эффективного использования функций виртуализации.
1. Сначала нажмите одновременно клавиши Windows и R.
2. Затем введите «optionalfeatures» и нажмите «OK», чтобы открыть окно Windows Features.
3. Когда откроются функции Windows, прокрутите вниз до «Hyper-V».
4. Просто установите флажок рядом с «Hyper-V». Затем нажмите «ОК», чтобы включить функции Hyper-V.
Теперь Windows загрузит и применит эту функцию к вашей системе. Этот процесс может занять некоторое время.
6. По завершении нажмите «Закрыть», чтобы закрыть окно.
Теперь перезагрузите компьютер один раз, чтобы изменения вступили в силу.
После перезагрузки устройства попробуйте снова установить дистрибутив Linux с помощью WSL. Проверьте, работает это или нет.
Исправление 3 — Активировать распределение динамической памяти
Шаг 1
1. Сначала завершите работу виртуальной машины в вашей системе.
2. Затем введите «powershell» в поле поиска.
3. После этого щелкните правой кнопкой мыши «Windows PowerShell» и нажмите «Запуск от имени администратора», чтобы открыть терминал с правами администратора.
4. Когда откроется PowerShell, скопируйте и вставьте этот код и нажмите Enter.
Set-VMProcessor <VMName> -ExposeVirtualizationExtensions $true
После этого закройте терминал PowerShell.
Шаг 2
Теперь вам нужно включить динамическое выделение RAM.
1. Сначала введите «Hyper-V» в поле поиска.
2. Затем нажмите «Диспетчер Hyper-V», чтобы открыть его.
3. После этого щелкните правой кнопкой мыши виртуальную машину и нажмите «Настройки».
4. Когда появится окно настроек, выберите «Память» на левой панели.
5. Установите значение «RAM:» в два раза больше текущего значения.
[Suppose it is set to use “4096” MB RAM. So, you have to set it twice the size of it or “8092” MB RAM.]
6. Затем установите флажок рядом с полем «Включить динамическую память».
7. Наконец, нажмите «Применить» и «ОК», чтобы сохранить изменения.
8. Теперь запустите виртуальную машину в вашей системе.
9. Затем просто щелкните виртуальную машину правой кнопкой мыши и нажмите «Подключить…». Это перезапустит виртуальную машину вместе с Hyper-V.
Позже попробуйте запустить Ubuntu еще раз, чтобы проверить это. Он будет работать нормально.
Это должно решить вашу проблему.
Ошибка с кодом 0x80370102 сопровождается сообщением «WslRegisterDistribution failed with error». Имеет привычку появляться при попытке установить дистрибутив Linux для доступа через подсистему Windows к Linux 2 (WSL2). Таким образом процедура развертывания саб-системы обрывается и сам смысл свежевыпущенной функции Windows испаряется. Инсталляция Linux Distro обрывается сообщением:
WslRegisterDistribution failed with error: 0x80370102
Error: 0x80370102 The virtual machines could not be started because a required feature is not installed.
Содержание
- Причины ошибки 0x80370102
- Что делать при ошибке 0x80370102?
- 1. Включить аппаратную виртуализацию в BIOS
- 2. Активировать аппаратную виртуализацию в PowerShell и настроить ОЗУ
- 3. Запустить компонент Hyper-V
Причины ошибки 0x80370102
Речь идет о совсем новой ошибке, ведь она начала появляться только с конца лета 2021 года с выпуском WSL2. Она начала появляться не только при попытке установить подсистему Linux, но и Debian. В силу новизны, у нее пока нет подробного технического разбора со стороны разработчиков, и мы полагаемся на пользователей и их отчеты. Они указывают на наличие следующих нескольких проблем:
- Используется сборка Windows Insider Preview. Многие пользователи инсайдерской версии Windows испытывают данную проблему и это нормально, ведь речь идет о незавершенной системе. Нужно ждать обновлений.
- Проблемы перехода с WSL 1 на WSL 2. Результат опять же недоработанного программного обеспечения.
- Выключена или отсутствует аппаратная виртуализация. Ее должен поддерживать процессор. Если такой функции в ЦП не предусмотрено, воспользоваться подсистемой Linux не получится. Может быть, что опция просто отключена и ее нужно включить.
- Выключен Hyper-V. Это важный компонент виртуальной среды, который участвует в запуске нескольких операционных систем на одной физической машине. Его нужно обязательно активировать.
Что делать при ошибке 0x80370102?
Все исправления вытекают из причин ошибки. Пока что мы можем только включить аппаратную виртуализацию и Hyper-V. Если ваша версия Windows (от 2004, май 2020 года) и оборудование позволяет использовать подсистему WSL2, она должна заработать после ручного включения обязательных компонентов.
1. Включить аппаратную виртуализацию в BIOS
Если попытаться запустить Ubuntu или другую разновидность Linux в VirtualBox без активации аппаратной виртуализации, Windows отобразит сразу ряд ошибок. Система начнет грешить на распределение регистров WSL, звук и другие сбои. Данная функция обязательно должна быть включена, иначе запустить виртуальную систему не получится. К сожалению, активируется опция в BIOS, поэтому придется сделать несколько лишних телодвижений.
Как исправить ошибку 0x80370102:
- Нажимаем на виртуальную кнопку в Пуске – «Перезагрузить».
- В момент включения компьютера должна быть подсказка снизу с тем, какую клавишу нужно нажать для активации BIOS. Обычно это Del, Esc, F2, но может отличаться. Если не удастся войти с первого раза, нужно будет снов перезагрузить ПК.
- Находим вкладку CPU config, Processor или Chipset.
- Ищем параметр Virtualization или Виртуализация.
- Нажимаем напротив него и выбираем опцию Enable. В зависимости от производителя он может называться Intel Virtualization Technology, AMD-V, Hyper-V, VT-X, Vanderpool, or SVM.
- Возвращаемся в начальное окно и жмем на вариант «Save & Exit».
2. Активировать аппаратную виртуализацию в PowerShell и настроить ОЗУ
Есть и другой вид виртуализации, так называемая вложенная, позволяющая запускать Hyper-V в виртуальной машине. Она нужна для запуска эмулятора телефона Visual Studio внутри виртуальной машины или тестировать конфигурации оборудования с использованием нескольких хостов. Части пользователей удалось исправить свою ошибку активацией вложенной виртуализации.
Инструкция по исправлению ошибки 0x80370102:
- Нажимаем правой кнопкой мыши по Пуску и выбираем PowerShell (или ищем через поиск). У нее должны быть права администратора.
- Вставляем команду Set-VMProcessor <VMName> -ExposeVirtualizationExtensions $true и нажимаем Enter.
- Правым кликом мыши выбираем виртуальную машину посредством диспетчера Hyper-V и переходим в ее «Настройки».
- Жмем на вкладку «Память» в панели слева и выключаем параметр «Включить динамическую память», просто вручную увеличиваем значение вдвое.
- Запускаем виртуальную машину.
- Кликаем правой кнопкой мыши по ней и выбираем «Подключиться». После запуска Hyper-V произойдет перезагрузка и при повторной попытке запуска ошибка уже не должна появляться.
3. Запустить компонент Hyper-V
Компонент Hyper-V нужен для того, чтобы администраторы могли получать больший контроль над собственным оборудованием при виртуализации нескольких операционных систем на одном оборудовании. Без него ошибка во время установки Linux гарантирована.
Нужно включить Hyper-V и вот, как это можно сделать:
- С помощью поиска переходим в «Панель управления».
- Открываем «Программы и компоненты».
- Жмем на элемент левого меню «Включение или отключение компонентов Windows».
- Ищем пункт Hyper-V (один из первых) и устанавливаем флаг возле него.
- Перезагружаем компьютер.
Это лучшее, что мы можем предложить для исправления ошибки WslRegisterDistribution failed with error: 0x80370102. Перечисленные методы работают у большинства, на это указывают ответы в комментариях на форумах, поэтому без зазрений совести можем их рекомендовать к использованию.
Version
10.0.22621.755
WSL Version
- WSL 2
- WSL 1
Kernel Version
5.15.68.1
Distro Version
Ubuntu only, from wsl.exe --list
, is listed with this name only.
Other Software
I was using Visual Studio Code, WSL Remote extension, all of it, but I needed to reset BIOS CMOS, reinstall Windows, etc, and now I’m only with the elements that comes with Windows 11.
Repro Steps
n 2022-10-28 an Windows Update were installed and I didn’t used the computer since this day until 2022-10-31. On this day, The computer wasn’t even turning on, neither displays nor keyboard / mouse, nothing. After some harware debugging, I needed to reset CMOS BIOS and then the computer turned on.
But then the WSL2 stopped working. None of my efforts, toggling on / off the VMP and WSL on DISM, were working. So I’ve recovered Windows with its tool for it and the issues persisted.
The fTPM (AMD CPU) is activated, is TCG_2.0, when I toggle on / off, the tpm.msc changes, saying when it is on or off BUT, when I toggle on / off the Virtual Machine Platform, it doesn’t recognize that the virtualization is on.
I’ve started to install the Ubuntu distro but it never ends, because of the error:
I’ve already saw several issues with the same 0x80370102
error code, but the subsequent message changes from one to another issue.
Expected Behavior
VMP and WSL2 working with Ubuntu distro being installed and working together.
Actual Behavior
Installing the VMP and WSL on Toggle Windows Features are not enabling the Virtualization. My version of Windows 11 is Home and seems to have only HypervisorPlatform and VirtualMachinePlatform available:
It was working normally since the aforementioned update, even without HyperV and all the other stuff that I see on the threads here.
Diagnostic Logs
No response
Большое количество пользователей сообщило, что при попытке установить Linux Distro для Windows Subsystem для Linux 2 (WSL2) появляется сообщение об ошибке 0x80370102.
Не забудьте внести в белый список наш сайт. Это уведомление не исчезнет, пока вы не сделаете это. Вы ненавидите рекламу, мы ее получаем. Мы делаем так же. К сожалению, это единственный способ для нас, чтобы продолжать предоставлять звездный контент и руководства о том, как решить ваши самые большие технические проблемы. Вы можете поддержать нашу команду из 30 человек, чтобы они продолжали выполнять свою работу, занеся в белый список наш сайт. Мы размещаем только несколько рекламных объявлений на странице, не препятствуя вашему доступу к контенту.
Эта ошибка является чрезвычайно новой, поскольку WSL2 был выпущен 12 июня этого года с Windows build 18917, и это касается не только дистрибутивов Linux. Эта ошибка также встречалась при попытке установить дистрибутив Debian.
Эта досадная ошибка не позволяет завершить установку виртуального устройства на вашем компьютере, поэтому вы не можете получить доступ к новым функциям, содержащимся в обновлении.
Несмотря на то, что это чрезвычайно свежая проблема и мало информации можно найти, мы рассмотрим некоторые из лучших доступных решений. Пожалуйста, внимательно следуйте инструкциям, представленным в этом списке, чтобы не вызывать других проблем.
Как я могу исправить ошибку 0x80370102 в Windows 10?
1. Проверьте, поддерживает ли ваш компьютер аппаратную виртуализацию
- Щелкните правой кнопкой мыши на панели задач Windows -> выберите диспетчер задач.
- В диспетчере задач выберите вкладку « Производительность » и проверьте, включены ли поддержка виртуализации и Hyper-V.
- Закройте диспетчер задач и следуйте следующему способу, чтобы активировать любой / оба отключенных параметра.
Запустите любую операционную систему в Windows 10 с этими приложениями!
2. Активируйте аппаратную виртуализацию из BIOS
- Перезагрузите компьютер.
- В зависимости от вашего производителя BIOS, ключ для входа в BIOS может отличаться. Нажмите клавиши Del, Esc, F1, F2 или F4 на клавиатуре, как только экран станет черным. (Если вы не получаете в первый раз, перезагрузите компьютер и попробуйте другой ключ).
- Найдите раздел конфигурации процессора (меню может называться Processor, CPU config, Chipset и т. Д.)
- Найдите параметр виртуализации и включите его (технология виртуализации Intel, AMD-V, Hyper-V, VT-X, Vanderpool или SVM).
- Выберите опцию Сохранить и выйти.
- Компьютер перезагрузится с включенной аппаратной виртуализацией.
- Проверьте, сохраняется ли проблема. Если это так, следуйте следующему методу.
3. Активируйте вложенную виртуализацию для виртуальных машин с помощью PowerShell (Admin)
- На главном компьютере (с выключенным целевым компьютером) -> нажмите Win + X и выберите PowerShell (Admin) из списка.
- Внутри окна PowerShell -> вставьте эту команду, изменив значения вашего процессора и имени виртуальной машины: Set-VMProcessor —ExposeVirtualizationExtensions $ true
- Нажмите Enter, чтобы запустить его.
- Если вы хотите включить эту службу на всех виртуальных машинах, установленных на вашем ПК, которые в данный момент отключены, вставьте эту команду в PowerShell: Get-VM | ? State -eq ‘Off’ | Set-VMProcessor -ExposeVirtualizationExtensions $ true
Мы рассмотрели некоторые из лучших способов решения кода ошибки 0x80370102 при попытке установить подсистему Linux или Debian Distro для Windows для Linux 2 (WSL2).
Мы надеемся, что эти шаги помогли вам решить вашу проблему. Пожалуйста, не стесняйтесь сообщить нам, помогло ли вам это руководство, используя раздел комментариев ниже.
ЧИТАЙТЕ ТАКЖЕ:
- Как исправить фатальную ошибку виртуальной машины Java в Windows 10
- Теперь вы можете создавать свои собственные пакеты дистрибутивов WSL для Microsoft Store
- 4 великолепных эмулятора Linux для вашего ПК с Windows 10
-
Partition Wizard
-
Partition Magic
- Fix: WSL Register Distribution Error 0x80370102 Windows 10 / 11
By Vega | Follow |
Last Updated October 18, 2022
This “WslRegistertionDistribution failed with Error: 0x80370102” error message occurs when users try to install a Linux distribution to access via Windows Subsystem for Linux 2. If you are also one of them, this article from MiniTool Partition Wizard is what you need.
Windows already includes this new feature and users can install the Linux subsystem simply by enabling the «Windows Subsystem for Linux» feature. However, when downloading Linux distributions through Windows Subsystem for Linux or WSL, users encounter this error message «WslRegisterDistribution failed with error: 0x80370102».
Windows Subsystem for Linux requires Hyper-V and virtualization to be enabled on our computer. Suppose you mistakenly disabled a feature on your computer after enabling Windows Subsystem for Linux. In this case, when starting WSL on your PC, you may encounter the error message:
WslRegisterDistribution failed with error: 0x80370102.
Error: 0x80370102 The virtual machine could not be started because a required feature is not installed.
Well, how to fix this error? The detailed steps to solve “WslRegisterDistribution failed with Error: 0x80370102” are shown below.
Fix 1: Enable Hyper-V
Hyper-V is a must-have feature or functionality for using the Windows Subsystem for Linux on Windows computers. If you don’t enable it, it will generate an error when installing a Linux distribution to access via Windows. So, enabling Hyper-V might solve the “WslRegisterDistribution failed with Error: 0x80370102” problem.
Step 1: Type turn Windows features on or off on the Search box and click the best-matched result.
Step 2: Check the Hyper-V option and click OK.
Then restart your computer and check if this issue gets fixed. If not, proceed with the next solution.
Fix 2: Enable Hardware Virtualization
In order to use the Hyper-V-powered Windows Subsystem for Linux on your PC, you need to turn on hardware virtualization. If you disabled WSL by mistake after installing it, you need to check and enable this feature from the BIOS. Until then, you can open Task Manager on your computer and switch to the Performance tab. Here you can find a tab called Virtualization.
Make sure the status shows Enabled. If not, you need to follow the steps below to enable hardware virtualization on your Windows PC.
Step 1: Restart your computer. Then press the specific hotkey to enter BIOS. The hotkeys may vary due to different brands. It usually is Esc, F2 or Del, etc.
Step 2: Once the BIOS window opens up, go to the Advanced tab, and press Enter to continue.
Note:
The Virtualization option may not be present in the Advanced tab on some computers. In this case, you’ll find it in the Performance tab.
Step 3: Use the arrows on your keyboard to select Virtualization and enable it.
After that, save the changes and reboot your computer.
Fix 3: Enable Nested Virtualization & Change RAM Settings
Nested virtualization is a feature that allows you to run Hyper-V inside a Hyper-V virtual machine (VM). This is useful for running the Visual Studio Phone Emulator in a virtual machine, or for testing configurations that typically require multiple hosts. Turning on nested virtualization has reportedly been a solution for many online users. So, follow these steps:
Step 1: Shut down your virtual machine in Hyper-V Manager.
Step 2: Press Win + X on your keyboard and select Windows PowerShell (Admin) from the popup list.
Step 3: In the PowerShell window, copy-paste this command and press Enter:
Set-VMProcessor <VMName> -ExposeVirtualizationExtensions $true
Step 4: Right-click your virtual machine in Hyper-V Manager and select Settings.
Step 5: Click Memory in the left pane, uncheck Enable Dynamic Memory, and set the RAM value to twice the current value, e.g.2048 > 4096.
Step 6: Click Apply and OK to save the changes.
Step 7: Start your virtual machine. Then right-click on your virtual machine and select Connect. This will run Hyper-V and your system will reboot.
Later, try running Ubuntu again to test to see if the “WslRegisterDistribution failed with Error: 0x80370102” issue is resolved.
About The Author
Position: Columnist
Vega joined MiniTool as an editor after graduation. She enjoys helping people with computer problems, including disk management, data recovery, and more. She is constantly expanding her knowledge in related fields. And she will continue to bring more easy-to-understand professional articles to help people solve various problems on the PC.
In her daily life, Vega enjoys hanging out with friends, shopping online and listening to music. She is someone who knows how to enjoy life.