omniosorg / kayak

Kayak (PXE-enabled network imaging of OmniOS)
https://omnios.org
15 stars 71 forks source link

omnios-r151046.iso fails to install on a Hyper-V Gen2 VM on Windows 11 Pro #250

Closed JohnConnett closed 1 year ago

JohnConnett commented 1 year ago

According to this message:

From: Andy Fiddaman illumos@fiddaman.net To: illumos-discuss Subject: Re: [discuss] illumos / OmniOS boot loader development

On Fri, 26 May 2023, Jason King wrote:

You currently can?t run illumos as a Hyper-V Gen2 VM. There?s a number of unique things a Gen2 VM must support that illumos currently does not.

That's true for illumos, but OmniOS runs on Hyper-V Gen2 as it has drivers contributed by Delphix which are not yet upstream. All new OmniOS releases are boot tested on Hyper-V Gen1 and Gen2 via an installation from .iso.

it should be possible to install omnios-r151046.iso onto a Hyper-V Gen 2 VM. It fails for me on Windows 11 Pro, with a selection of 2048 MB or 4096 MB and with between 1 and 5 Virtual processors.

With verbose selected the last few lines displayed on the console are:

ramdisk0 at root
ramdisk0 is /ramdisk
root on /ramdisk:a fsytpe ufs
/cpus (cpunex0) online
pseudo-device: dld0
dld0 is /pseudo/dld@0
hadfl commented 1 year ago

That's weird. Can you share more details of your configuration? I tested the OmniOS r46 iso successfully on Hyper-V gen2 (on Windows 10, but I don't think that should matter).

The only "pitfall" with gen2 is that we don't have framebuffer support yet. So you'll have to create a serial device for it and connect to the console via named pipe (https://learn.microsoft.com/en-us/powershell/module/hyper-v/set-vmcomport?view=windowsserver2019-ps).

In my case:

PS C:\WINDOWS\system32> Get-VMComPort "OmniOS - HV gen2"

VMName           Name  Path
------           ----  ----
OmniOS - HV gen2 COM 1 \\.\pipe\OmniOSgen2
OmniOS - HV gen2 COM 2

Then use Putty to connect to \\.\pipe\OmniOSgen2

JohnConnett commented 1 year ago

Thanks for supplying the missing piece of the jigsaw puzzle! I didn't know about the lack of framebuffer support and didn't have a serial console. Once the named pipe was created and PuTTY connected I was able to complete the installation. Note that both Set-VMComPort and PuTTY require administrator access.