opnsense / core

OPNsense GUI, API and systems backend
https://opnsense.org/
BSD 2-Clause "Simplified" License
3.36k stars 753 forks source link

Different Boot Menu when booting from USB #1408

Closed pgassmann closed 7 years ago

pgassmann commented 7 years ago

It should be quickly visible that the system is booting from the USB Stick. The initial Bootmenu (Single User, Multiuser, Reboot, ...) looks exactly the same from USB as from the installed system.

The boot message (on serial) after selecting USB as boot devide was some cryptic output then "Booting from Harddisk...", then showing the known bootscreen.

This mislead me to believe that the system was not booting from USB but from the installed.

expected behaviour:

fichtner commented 7 years ago

It's really not easy to detect an install media up-front during early boot. We'd have to label it install media to start with, which poses problems when installing ending in additional if / else flip flops for something we don't really have to worry about from an architectural standpoint.

The web GUI makes it pretty clear since 17.1.4, the console will also prompt for the "installer" user. I would hope this is a good first step and we can build on that as opposed to early boot / boot loader screen?

Cheers, Franco

pgassmann commented 7 years ago

Is it the same boot menu that the install medium uses that is copied to the final installation?

I assumed that the install media has its own boot sequence files. Then they could simply be different from the ones that are copied in the install process.

fichtner commented 7 years ago

Hi Philipp,

This is exactly right. The contents is cloned to the target system during install. We do not have any install media separation... The only difference from installed systems (and the Nano image) vs. install media is that their partition is read-only so that it knows it can offer the installer. But you can also start the installer from installed systems, creating new clones of the current system.

As of 17.7-RC1, we have two banners after boot, one in the console, the other in the GUI. Though there is no SSH banner indication at the moment...

screen shot 2017-07-12 at 9 46 14 am screen shot 2017-07-12 at 9 47 38 am

What do you think would make it clearer?

Cheers, Franco

pgassmann commented 7 years ago

Thank you for the clarification.

Perhaps you could display the device path and model instead of just "Harddisk".

Booting from Disk /dev/usb1 "Kingston 32G"

or whatever information is available about the disk on FreeBSD at that stage.

(example on linux)
hdparm -I /dev/sda
/dev/sda:

ATA device, with non-removable media
    Model Number:       INTEL SSDSCKKF512H6 SATA 512GB
[..]
lshw -short -C disk
H/W path               Device      Class          Description
=============================================================
/0/100/14/1/4/0.0.0    /dev/sdb    disk           1TB 2115
/0/1/0.0.0             /dev/sda    disk           512GB INTEL SSDSCKKF51
fichtner commented 7 years ago

I think we can show the root partition's device, in the installer case it has "_install" appended, in the DVD case it's "/dev/iso9660/OPNSENSE_INSTALL".

That only leaves the question where to display the message as the boot is pretty verbose and early prints get flushed out.

fichtner commented 7 years ago

this is how it will look like

screen shot 2017-07-23 at 4 03 36 pm