multipass icon indicating copy to clipboard operation
multipass copied to clipboard

The computer needs to be rebooted in order for Hyper-V to be fully available

Open hyqf98 opened this issue 2 years ago • 9 comments

Windows 11 Professional version: 25140.1000 multipass version: 1.11.1+win

PS C:\Users> multipass launch --name my-vm
launch failed: The computer needs to be rebooted in order for Hyper-V to be fully available

When I type Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

 Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Path          :
Online        : True
RestartNeeded : False

hyqf98 avatar May 23 '23 02:05 hyqf98

Hi @a1424132610!

Yes, the output of Enable-WindowsOptionalFeature can be misleading. It claims a restart is not needed, but in our experience, Hyper-V will not work properly after being enabled until the machine is rebooted. I think it's better to leave this check in place to ensure Hyper-V is working properly instead of having strange errors that we are unsure of what the cause is.

townsend2010 avatar May 23 '23 12:05 townsend2010

Hi @a1424132610!

Yes, the output of Enable-WindowsOptionalFeature can be misleading. It claims a restart is not needed, but in our experience, Hyper-V will not work properly after being enabled until the machine is rebooted. I think it's better to leave this check in place to ensure Hyper-V is working properly instead of having strange errors that we are unsure of what the cause is.

But I have restarted the computer many times and still the problem occurs

hyqf98 avatar May 24 '23 00:05 hyqf98

Oh, in that case, then something else is going on.

townsend2010 avatar May 24 '23 13:05 townsend2010

From Powershell, could you please paste the output of: Get-CimInstance Win32_ComputerSystem | Select-Object -ExpandProperty HypervisorPresent

Thanks!

townsend2010 avatar May 24 '23 14:05 townsend2010

image

hyqf98 avatar May 25 '23 01:05 hyqf98

The following exception occurred when I started the virtual machine. I tried to set the encoding format of the power shell and the output was still garbled

C:\Users\win10>multipass launch --name my-vm -vvvvv
[2023-05-25T09:15:29.865] [trace] [Hyper-V Health Check] PowerShell arguments: -NoProfile, -NoExit, -Command, -
[2023-05-25T09:15:29.865] [trace] [Hyper-V Health Check] PowerShell working dir ''
[2023-05-25T09:15:29.865] [trace] [Hyper-V Health Check] PowerShell program 'powershell.exe'
[2023-05-25T09:15:29.865] [trace] [Hyper-V Health Check] [0] PowerShell state changed to Starting
[2023-05-25T09:15:29.871] [trace] [Hyper-V Health Check] [0] PowerShell state changed to Running
[2023-05-25T09:15:29.872] [debug] [powershell.exe] [21908] started: powershell.exe -NoProfile -NoExit -Command -
[2023-05-25T09:15:29.872] [debug] [Hyper-V Health Check] [21908] Cmdlet: 'Get-ItemProperty -Path 'HKLM:\Software\Microsoft\Windows NT\CurrentVersion' | Select-Object -ExpandProperty CurrentMajorVersionNumber'
[2023-05-25T09:15:30.231] [trace] [Hyper-V Health Check] 10
[2023-05-25T09:15:30.231] [trace] [Hyper-V Health Check] [21908] Output: 10
[2023-05-25T09:15:30.231] [debug] [Hyper-V Health Check] [21908] Cmdlet exit status is 'true'
[2023-05-25T09:15:30.232] [debug] [Hyper-V Health Check] [21908] Cmdlet: 'Get-ItemProperty -Path 'HKLM:\Software\Microsoft\Windows NT\CurrentVersion' | Select-Object -ExpandProperty ReleaseId'
[2023-05-25T09:15:30.247] [trace] [Hyper-V Health Check] 2009
[2023-05-25T09:15:30.247] [trace] [Hyper-V Health Check] [21908] Output: 2009
[2023-05-25T09:15:30.247] [debug] [Hyper-V Health Check] [21908] Cmdlet exit status is 'true'
[2023-05-25T09:15:30.248] [debug] [Hyper-V Health Check] [21908] Cmdlet: 'Get-CimInstance Win32_ComputerSystem | Select-Object -ExpandProperty HypervisorPresent'
[2023-05-25T09:15:30.343] [trace] [Hyper-V Health Check] True
[2023-05-25T09:15:30.343] [trace] [Hyper-V Health Check] [21908] Output: True
[2023-05-25T09:15:30.343] [debug] [Hyper-V Health Check] [21908] Cmdlet exit status is 'true'
[2023-05-25T09:15:30.344] [debug] [Hyper-V Health Check] [21908] Cmdlet: 'Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V | Select-Object -ExpandProperty State'
[2023-05-25T09:15:30.709] [trace] [Hyper-V Health Check] Enabled
[2023-05-25T09:15:30.709] [trace] [Hyper-V Health Check] [21908] Output: Enabled
[2023-05-25T09:15:30.709] [debug] [Hyper-V Health Check] [21908] Cmdlet exit status is 'true'
[2023-05-25T09:15:30.709] [debug] [Hyper-V Health Check] [21908] Cmdlet: 'Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Hypervisor | Select-Object -ExpandProperty State'
[2023-05-25T09:15:30.898] [trace] [Hyper-V Health Check] Enabled
[2023-05-25T09:15:30.898] [trace] [Hyper-V Health Check] [21908] Output: Enabled
[2023-05-25T09:15:30.898] [debug] [Hyper-V Health Check] [21908] Cmdlet exit status is 'true'
[2023-05-25T09:15:30.900] [debug] [Hyper-V Health Check] [21908] Cmdlet: 'Get-Service -Name vmms | Select-Object -ExpandProperty Status'
[2023-05-25T09:15:30.915] [trace] [Hyper-V Health Check] Running
[2023-05-25T09:15:30.915] [trace] [Hyper-V Health Check] [21908] Output: Running
[2023-05-25T09:15:30.915] [debug] [Hyper-V Health Check] [21908] Cmdlet exit status is 'true'
[2023-05-25T09:15:30.934] [trace] [Hyper-V Health Check] [21908] PowerShell state changed to NotRunning
[2023-05-25T09:15:30.935] [debug] [Hyper-V Health Check] [21908] PowerShell finished successfully
[2023-05-25T09:18:07.760] [trace] [url downloader] Found https://cloud-images.ubuntu.com/releases/server/releases/jammy/release-20230518/ubuntu-22.04-server-cloudimg-amd64.img in cache: false
[2023-05-25T09:18:16.998] [debug] [qemu-img] [25556] started: qemu-img info C:/ProgramData/Multipass/cache/vault/images/jammy-20230518/ubuntu-22.04-server-cloudimg-amd64.vhdx
[2023-05-25T09:18:17.035] [trace] [my-vm] PowerShell arguments: Resize-VHD, -Path, C:/ProgramData/Multipass/data/vault/instances/my-vm/ubuntu-22.04-server-cloudimg-amd64.vhdx, -SizeBytes, 5368709120
[2023-05-25T09:18:17.035] [trace] [my-vm] PowerShell working dir ''
[2023-05-25T09:18:17.035] [trace] [my-vm] PowerShell program 'powershell.exe'
[2023-05-25T09:18:17.035] [trace] [my-vm] [0] PowerShell state changed to Starting
[2023-05-25T09:18:17.042] [trace] [my-vm] [0] PowerShell state changed to Running
[2023-05-25T09:18:17.042] [debug] [powershell.exe] [23192] started: powershell.exe Resize-VHD -Path C:/ProgramData/Multipass/data/vault/instances/my-vm/ubuntu-22.04-server-cloudimg-amd64.vhdx -SizeBytes 5368709120
[2023-05-25T09:18:18.931] [trace] [my-vm] [23192] PowerShell state changed to NotRunning
[2023-05-25T09:18:18.931] [debug] [my-vm] [23192] PowerShell finished successfully
[2023-05-25T09:18:18.931] [trace] [my-vm] [23192] Output:

[2023-05-25T09:18:18.932] [trace] [my-vm] PowerShell arguments: -NoProfile, -NoExit, -Command, -
[2023-05-25T09:18:18.932] [trace] [my-vm] PowerShell working dir ''
[2023-05-25T09:18:18.932] [trace] [my-vm] PowerShell program 'powershell.exe'
[2023-05-25T09:18:18.932] [trace] [my-vm] [0] PowerShell state changed to Starting
[2023-05-25T09:18:18.940] [trace] [my-vm] [0] PowerShell state changed to Running
[2023-05-25T09:18:18.941] [debug] [powershell.exe] [20044] started: powershell.exe -NoProfile -NoExit -Command -
[2023-05-25T09:18:18.942] [debug] [my-vm] [20044] Cmdlet: 'Get-VM -Name my-vm'
[2023-05-25T09:18:20.133] [trace] [my-vm] Get-VM : Hyper-V �Ҳ�������Ϊ��my-vm������������
����λ�� ��:1 �ַ�: 1
+ Get-VM -Name my-vm
+ ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (my-vm:String) [Get-VM]��VirtualizationException
    + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.GetVM
[2023-05-25T09:18:20.133] [trace] [my-vm] [20044] Output: Get-VM : Hyper-V �Ҳ�������Ϊ��my-vm������������
����λ�� ��:1 �ַ�: 1
+ Get-VM -Name my-vm
+ ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (my-vm:String) [Get-VM]��VirtualizationException
    + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.GetVM
[2023-05-25T09:18:20.133] [debug] [my-vm] [20044] Cmdlet exit status is 'false'
[2023-05-25T09:18:20.134] [debug] [my-vm] [20044] Cmdlet: '$switch = Get-VMSwitch -Id C08CB7B8-9B3C-408E-8E30-5E16A3AEB444'
[2023-05-25T09:18:20.497] [trace] [my-vm]
[2023-05-25T09:18:20.497] [trace] [my-vm] [20044] Output:
[2023-05-25T09:18:20.497] [debug] [my-vm] [20044] Cmdlet exit status is 'true'
[2023-05-25T09:18:20.498] [debug] [my-vm] [20044] Cmdlet: 'New-VM -Name my-vm -Generation 2 -VHDPath "C:/ProgramData/Multipass/data/vault/instances/my-vm/ubuntu-22.04-server-cloudimg-amd64.vhdx" -BootDevice VHD -SwitchName $switch.Name -MemoryStartupBytes 1073741824'
[2023-05-25T09:18:22.716] [trace] [my-vm] Name  State CPUUsage(%) MemoryAssigned(M) Uptime   Status   Version
----  ----- ----------- ----------------- ------   ------   -------
my-vm Off   0           0                 00:00:00 �������� 11.0
[2023-05-25T09:18:22.716] [trace] [my-vm] [20044] Output: Name  State CPUUsage(%) MemoryAssigned(M) Uptime   Status   Version
----  ----- ----------- ----------------- ------   ------   -------
my-vm Off   0           0                 00:00:00 �������� 11.0
[2023-05-25T09:18:22.716] [debug] [my-vm] [20044] Cmdlet exit status is 'true'
[2023-05-25T09:18:22.717] [debug] [my-vm] [20044] Cmdlet: 'Set-VMFirmware -VMName my-vm -EnableSecureBoot Off'
[2023-05-25T09:18:22.779] [trace] [my-vm]
[2023-05-25T09:18:22.779] [trace] [my-vm] [20044] Output:
[2023-05-25T09:18:22.779] [debug] [my-vm] [20044] Cmdlet exit status is 'true'
[2023-05-25T09:18:22.780] [debug] [my-vm] [20044] Cmdlet: 'Set-VMProcessor -VMName my-vm -Count 1'
[2023-05-25T09:18:22.875] [trace] [my-vm]
[2023-05-25T09:18:22.875] [trace] [my-vm] [20044] Output:
[2023-05-25T09:18:22.875] [debug] [my-vm] [20044] Cmdlet exit status is 'true'
[2023-05-25T09:18:22.875] [debug] [my-vm] [20044] Cmdlet: 'Add-VMDvdDrive -VMName my-vm -Path "C:/ProgramData/Multipass/data/vault/instances/my-vm/cloud-init-config.iso"'
[2023-05-25T09:18:23.066] [trace] [my-vm]
[2023-05-25T09:18:23.066] [trace] [my-vm] [20044] Output:
[2023-05-25T09:18:23.066] [debug] [my-vm] [20044] Cmdlet exit status is 'true'
[2023-05-25T09:18:23.066] [debug] [my-vm] [20044] Cmdlet: 'Set-VMMemory -VMName my-vm -DynamicMemoryEnabled $false'
[2023-05-25T09:18:23.257] [trace] [my-vm]
[2023-05-25T09:18:23.257] [trace] [my-vm] [20044] Output:
[2023-05-25T09:18:23.257] [debug] [my-vm] [20044] Cmdlet exit status is 'true'
[2023-05-25T09:18:23.257] [debug] [my-vm] [20044] Cmdlet: 'Set-VMNetworkAdapter -VMName my-vm -StaticMacAddress "52:54:00:93:29:20"'
[2023-05-25T09:18:23.353] [trace] [my-vm]
[2023-05-25T09:18:23.353] [trace] [my-vm] [20044] Output:
[2023-05-25T09:18:23.353] [debug] [my-vm] [20044] Cmdlet exit status is 'true'
[2023-05-25T09:18:23.359] [debug] [my-vm] [20044] Cmdlet: 'Start-VM -Name my-vm'
[2023-05-25T09:18:24.067] [trace] [my-vm] Start-VM : ��my-vm���޷�������
Microsoft Virtual BIOS (ʵ�� ID AC6B8DC1-3257-4A70-B1B2-A9C9215659AD): ������������Ч������
��my-vm���޷�������(������ ID 1D9345E7-C301-4CA9-9B11-44DD5670EB42)
��my-vm��Microsoft Virtual BIOS: �޷���ʼ��Դ��������Ϊ�����˴�����������Ч����(0x8007000D)��(������ ID 1D9345E7-C301-4CA9-9B
11-44DD5670EB42)
����λ�� ��:1 �ַ�: 1
+ Start-VM -Name my-vm
+ ~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Start-VM], VirtualizationException
    + FullyQualifiedErrorId : Unspecified,Microsoft.HyperV.PowerShell.Commands.StartVM
[2023-05-25T09:18:24.067] [trace] [my-vm] [20044] Output: Start-VM : ��my-vm���޷�������
Microsoft Virtual BIOS (ʵ�� ID AC6B8DC1-3257-4A70-B1B2-A9C9215659AD): ������������Ч������
��my-vm���޷�������(������ ID 1D9345E7-C301-4CA9-9B11-44DD5670EB42)
��my-vm��Microsoft Virtual BIOS: �޷���ʼ��Դ��������Ϊ�����˴�����������Ч����(0x8007000D)��(������ ID 1D9345E7-C301-4CA9-9B
11-44DD5670EB42)
����λ�� ��:1 �ַ�: 1
+ Start-VM -Name my-vm
+ ~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Start-VM], VirtualizationException
    + FullyQualifiedErrorId : Unspecified,Microsoft.HyperV.PowerShell.Commands.StartVM
[2023-05-25T09:18:24.067] [debug] [my-vm] [20044] Cmdlet exit status is 'false'
[2023-05-25T09:18:24.068] [trace] [my-vm] PowerShell arguments: Remove-VM, -Name, my-vm, -Force
[2023-05-25T09:18:24.068] [trace] [my-vm] PowerShell working dir ''
[2023-05-25T09:18:24.068] [trace] [my-vm] PowerShell program 'powershell.exe'
[2023-05-25T09:18:24.068] [trace] [my-vm] [0] PowerShell state changed to Starting
[2023-05-25T09:18:24.074] [trace] [my-vm] [0] PowerShell state changed to Running
[2023-05-25T09:18:24.075] [debug] [powershell.exe] [5548] started: powershell.exe Remove-VM -Name my-vm -Force
[2023-05-25T09:18:25.184] [trace] [my-vm] [5548] PowerShell state changed to NotRunning
[2023-05-25T09:18:25.184] [debug] [my-vm] [5548] PowerShell finished successfully
[2023-05-25T09:18:25.184] [trace] [my-vm] [5548] Output:

[2023-05-25T09:18:25.186] [trace] [my-vm] [20044] Cmdlet: 'Get-VM -Name my-vm | Select-Object -ExpandProperty State'
[2023-05-25T09:18:25.225] [trace] [my-vm] Get-VM : Hyper-V �Ҳ�������Ϊ��my-vm������������
����λ�� ��:1 �ַ�: 1
+ Get-VM -Name my-vm | Select-Object -ExpandProperty State
+ ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (my-vm:String) [Get-VM]��VirtualizationException
    + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.GetVM
[2023-05-25T09:18:25.225] [trace] [my-vm] [20044] Output: Get-VM : Hyper-V �Ҳ�������Ϊ��my-vm������������
����λ�� ��:1 �ַ�: 1
+ Get-VM -Name my-vm | Select-Object -ExpandProperty State
+ ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (my-vm:String) [Get-VM]��VirtualizationException
    + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.GetVM
[2023-05-25T09:18:25.225] [trace] [my-vm] [20044] Cmdlet exit status is 'false'
[2023-05-25T09:18:25.251] [trace] [my-vm] [20044] PowerShell state changed to NotRunning
[2023-05-25T09:18:25.252] [debug] [my-vm] [20044] PowerShell finished successfully
launch failed: Start-VM : ��my-vm���޷�������
Microsoft Virtual BIOS (ʵ�� ID AC6B8DC1-3257-4A70-B1B2-A9C9215659AD): ������������Ч������
��my-vm���޷�������(������ ID 1D9345E7-C301-4CA9-9B11-44DD5670EB42)
��my-vm��Microsoft Virtual BIOS: �޷���ʼ��Դ��������Ϊ�����˴�����������Ч����(0x8007000D)��(������ ID 1D9345E7-C301-4CA9-9B
11-44DD5670EB42)
����λ�� ��:1 �ַ�: 1
+ Start-VM -Name my-vm
+ ~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Start-VM], VirtualizationException
    + FullyQualifiedErrorId : Unspecified,Microsoft.HyperV.PowerShell.Commands.StartVM

hyqf98 avatar May 25 '23 01:05 hyqf98

Hi @a1424132610!

I looked up "Microsoft Virtual Bios 0x8007000D" (with 0x8007000D being the error code) and it appears your machine is misconfigured, but I'm not sure how. Information is pretty scarce, but you may want to explore this further. Unfortunately, I don't think there is much else we can do to help.

townsend2010 avatar May 25 '23 12:05 townsend2010

Hi @a1424132610!

I looked up "Microsoft Virtual Bios 0x8007000D" (with 0x8007000D being the error code) and it appears your machine is misconfigured, but I'm not sure how. Information is pretty scarce, but you may want to explore this further. Unfortunately, I don't think there is much else we can do to help.

All right, thanks

hyqf98 avatar May 26 '23 00:05 hyqf98

Hello, I have the same issue running multipass on Windows 11 Professional.

I just did a Quick Create on Hyper-V and an Ubuntu VM was installed without any problem, also Hyper-V was enable since I installed Windows, so it was not a recent enable without reboot problem.

Edition	Windows 11 Pro
Version	22H2
Installed on	‎9/‎22/‎2022
OS build	22621.2361
Experience	Windows Feature Experience Pack 1000.22674.1000.0
❯ multipass networks
networks failed: Multipass support for Hyper-V requires Windows 10 or newer

❯ multipass version
multipass   1.12.2+win
multipassd  1.12.2+win

[edit] Uninstalled multipass 1.12.2, disabled Hyper-V, reboot machine, enabled Hyper-V + reboot, installed multipass 1.11.1 + reboot. Same error message. After installation, looking at the Event Viewer, there are two warnings messages. I will try to find where the installation logs are located because the detailed message during installation seems to be some errors in there.

[daemon] Hypervisor health check failed: Multipass support for Hyper-V requires Windows 10 or newer [Qt] QIODevice::write (QFile, "C:\ProgramData\Multipass\cache\vault\multipassd-image-records.json"): device not open

[edit2] Same issue about port 50051 https://github.com/canonical/multipass/issues/573

ltsuda avatar Oct 06 '23 18:10 ltsuda