Code Monkey home page Code Monkey logo

Comments (7)

jonyesno avatar jonyesno commented on August 15, 2024 2

This ticket was wildly helpful getting my EX43s booted, thank you!

In advance of getting a KVM to enable the serial port, I managed to boot mfsBSD by disabling the serial ports in conf/loader.conf:

hint.uart.0.disabled="1"
hint.uart.1.disabled="1"

... and then persisting that in the installation's /boot/loader.conf when done.

from depenguin-run.

grembo avatar grembo commented on August 15, 2024 1

TL;DR

Installation works, you have to make sure to enable the serial port in the BIOS and correct /etc/fstab after a bsdinstall-based installation. You won't get console output during boot.

Detailed Description

I successfully installed 13.1-RELEASE, but it took a while to figure out how to make it boot.

  1. These machines only allow legacy boot if a discrete GPU is installed (onboard won't work). Hetzner uses the onboard adapter, so no legacy boot (UEFI as created by bsdinstall is ok though).
  2. The EFI firmware in these machines doesn't have ConOut connected, which means there is no console output during boot (after the boot loader), unless the serial port is disabled in the BIOS, see also this bug in FreeBSD bugzilla.
  3. At least the EX43 I got had the serial port disabled. As a result, the machine would boot with serial console output, but would get stuck at atrtc0: Non-PNP ISA device will be removed from GENERIC in FreeBSD 14, on verbose boot it would stop at pcib0: allocated type 4 (0x3f8-0x3f8) for rid 0 of uart0. So it's important to enable the serial port in the BIOS (under Advanced -> Onboard Devices Configuration -> Serial Port Configuration -> Serial Port -> Enabled). You need to order a kvm console using the Support tab in Hetzner Robot to make this change (it's free of charge if not used extensively).
  4. Make sure to correct or simply comment out the /etc/fstab entry for /boot/efi before rebooting, as bsdinstall uses the device names visible in QEMU, which differ. NOTE: This is true for most UEFI installations, so we should document this fact.

Screen Shots

Enable Serial Port

(I hit ESC/F1/F2 on boot to enter the BIOS, F1 is probably the correct key)

Advanced -> Onboard Devices Configuration

BIOS_page1

Serial Port Configuration

BIOS_page2

Serial Port

BIOS_page3

/etc/fstab

This is the corrected /etc/fstab, using the correct device. You might want to comment out the first line on first boot. This configuration uses ZFS + encrypted mirrored swap.

fstab

Verbose Boot Stuck

This is where the boot hangs in case the serial port is disabled in BIOS:

boot_hangs

Device details

BIOS

BIOS Information
        Vendor: American Megatrends Inc.
        Version: 9021
        Release Date: 08/12/2022
        Address: 0xF0000
        Runtime Size: 64 kB
        ROM Size: 24 MB
        Characteristics:
                PCI is supported
                BIOS is upgradeable
                BIOS shadowing is allowed
                Boot from CD is supported
                Selectable boot is supported
                BIOS ROM is socketed
                EDD is supported
                Japanese floppy for NEC 9800 1.2 MB is supported (int 13h)
                Japanese floppy for Toshiba 1.2 MB is supported (int 13h)
                5.25"/360 kB floppy services are supported (int 13h)
                5.25"/1.2 MB floppy services are supported (int 13h)
                3.5"/720 kB floppy services are supported (int 13h)
                3.5"/2.88 MB floppy services are supported (int 13h)
                Print screen service is supported (int 5h)
                Serial services are supported (int 14h)
                Printer services are supported (int 17h)
                CGA/mono video services are supported (int 10h)
                USB legacy is supported
                BIOS boot specification is supported
                Targeted content distribution is supported
                UEFI is supported
        BIOS Revision: 90.21

System

        Manufacturer: ASUS
        Product Name: System Product Name
        Version: System Version
        Serial Number: System Serial Number
        UUID: xxxx
        Wake-up Type: Power Switch
        SKU Number: SKU
        Family: To be filled by O.E.M.

Mainboard

Base Board Information
        Manufacturer: ASUSTeK COMPUTER INC.
        Product Name: PRIME Z690M-HZ
        Version: Rev 1.xx
        Serial Number: xxxx
        Asset Tag: Default string
        Features:
                Board is a hosting board
                Board is replaceable
        Location In Chassis: Default string
        Chassis Handle: 0x0003
        Type: Motherboard
        Contained Object Handles: 0

from depenguin-run.

jonyesno avatar jonyesno commented on August 15, 2024 1

I have two EX43s booting consistently with the serial disabled BIOS (as delivered) and serial disabled in loader.conf as above. When I did get the KVM attached it showed the full loader -> kernel -> login flow in this setup.

When I enabled the serial in the BIOS and removed the loader.conf lines, the KVM blanked after the loader -> kernel transition, and returned with a login prompt on ttyv0 when booted. (I think - I did not test this repeatedly before returning to the state above.)

from depenguin-run.

bretton avatar bretton commented on August 15, 2024

thanks @grembo closing

from depenguin-run.

grembo avatar grembo commented on August 15, 2024

NOTE: This is true for most UEFI installations, so we should document this fact.

Is this documented anywhere?

Also: We should probably add links to these issues in SUPPORTED_SERVERS.md, so users can navigate easily to these tutorials (or we move them to some wiki thing on github, but this sounds like a lot of work for little gain) <- already happened, so only the question about /etc/fstab remains.

from depenguin-run.

bretton avatar bretton commented on August 15, 2024

If script updated to disable com ports, then enabling in bios is not needed?

will need to do some testing

from depenguin-run.

grembo avatar grembo commented on August 15, 2024

This ticket was wildly helpful getting my EX43s booted, thank you!

In advance of getting a KVM to enable the serial port, I managed to boot mfsBSD by disabling the serial ports in conf/loader.conf:

hint.uart.0.disabled="1"
hint.uart.1.disabled="1"

... and then persisting that in the installation's /boot/loader.conf when done.

Interesting - I think I tried hint.uart.0.disabled="1" back when I struggled with this, but I didn't also disable uart.1

from depenguin-run.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.