Boot from disk, serial console over IPMI help for DL160 G6

Jeff Rizzo <[email protected]> Mon, 19 Jul 2021 09:58:30 -0700
Newsgroups gmane.os.netbsd.ports.x86-64
Message-ID <[email protected]>
I have an HP Proliant DL160 G6 (probably about 10 years old) installed 
with -current as of last week and sort-of working; I'm hoping someone 
can clue me in on the best way to fix the stuff that's not working 
(remotely, so that I don't lock myself out and require a site visit)


I'll start by expressing frustration with this system - the POST takes 
almost five minutes, after which there's about 15 seconds to get into 
the BIOS config/bootloader/whatever before the power cycle dance has to 
be done all over again. So, I've spent several hours over the last few 
days just waiting for this thing to boot. (UGH)

Anyway, I have an IPMI setup over which I can power cycle the box, and 
get to the BIOS setup screen using serial-over-IPMI. And, I have the box 
able to PXE boot. So... I feel pretty safe from an "emergency" 
standpoint, but the long reboot cycle makes me super paranoid that every 
time I try to fix boot-related stuff (like I'm trying to do) means I 
need to spend a full hour booting-and-rebooting, so ideally I'd like to 
figure out what's going on and how to fix it with a minimum of retries.  
:)   The box itself has a NetBSD 9.99.86 install booting from a raid1 
(two disks, two spares) configured on the first 110GB of wd0-wd3, which 
are 4TB SATA drives.  Being 4TB, they're partitioned with GPT, and 
there's a "RAID" partition on each drive and root is set to "force".  
What _doesn't_ work (or I haven't gotten it to work yet) is booting from 
disk;  I used sysinst to install, but either the bootblocks didn't 
install correctly or "something else".  If this were an MBR/disklabel 
system, I'd know exactly how to fix it, but...  This is complicated by 
the fact that I *think* this machine doesn't actually support UEFI boot 
(I could be wrong there - I don't actually *understand* EFI boot, and 
would love a pointer to the nitty-gritty of how it works).  So, I've 
been loading the kernel with a special PXEboot dance (which is working, 
mostly, now that I've figure out that the IPMI serial console is both 
"com0" and "com1" but at separate times in the boot cycle).  I'd love to 
get some help loading the kernel _from disk_ which would greatly 
increase my confidence in this entire setup. I can boot an install 
kernel easily enough (with 5-minute round-trips) if I get stuck, but I'm 
not entirely sure how to approach fixing this by hand - I knew the old 
MBR routine well enough, but things have changed enough in the last 
couple releases that I no longer feel like I understand how it works.

(Aside - I wish the pxe bootloader knew how to boot from disk! or at 
least load bootxx_ffsv2! - would make testing things faster in a case 
like this)

In case it clarifies anything, here's what the GPT looks like on all the 
disks (more or less):

        start        size  index  contents
            0           1         PMBR
            1           1         Pri GPT header
            2          32         Pri GPT table
           34   230686720      1  GPT part - NetBSD RAIDFrame component
    230686754  7583350381      2  GPT part - ZFS
   7814037135          32         Sec GPT table
   7814037167           1         Sec GPT header


Anyone care to help?  :)  Thanks in advance!

+j