open-power / petitboot

GNU General Public License v2.0
214 stars 56 forks source link

Bootflag to stop at Petitboot shell #46

Open causten opened 6 years ago

causten commented 6 years ago

Today in order for me to automate stopping at the Petitboot shell prompt I need to use an expect script to monitor port 22 for the menu and then issue arrow key strokes to select the option to drop to the shell.

Am I doing it wrong? Is there a better way? Can I set a flag on the BMC for it to drop me automatically and then present the boot status as such when it has happened?

sammj commented 6 years ago

No that's basically what https://github.com/open-power/op-test-framework/ does as well :) Although you can optimise it slightly by just pressing x instead which will exit directly.

Hypothetically we could interpret one of the IPMI bootdev flags as "drop to shell once", but we'd have to have a bit of a think about whether it's intuitive to interpret flags like "bios" or "setup" that way - right now they stop at the Petitboot menu.

oohal commented 5 years ago

I'm not sure setting the bootdev to bios to stop autobooting makes a whole lot of sense to begin with so dropping to a shell on setup seems reasonable. What do x86 boxes do in each case?

sammj commented 5 years ago

@oohal Well x86 boxes don't tend to have shells :) bios vs setup was me mixing up the ipmitool/openbmc ways of specifying flags, they are actually the same flag. Which leaves 'safe' and 'setup'. Safe has it's own requirements, and I think setup should still put you in Petitboot rather than the shell. It may be best just to x and be done with it.

oohal commented 5 years ago

Well x86 boxes don't tend to have shells :)

They do have an interactive bios though. I was thinking the x86 behaviour would be to drop the system into a UEFI config environment or similar, but i'm not sure how that would work on a server. Suppose we could have a nvram flag to control if it drops to a shell or not by default.

jk-ozlabs commented 3 years ago

How about diag to drop to a shell on boot?