View previous topic :: View next topic |
Author |
Message |
trumee Guru
Joined: 02 Mar 2003 Posts: 551 Location: London,UK
|
Posted: Fri Jul 06, 2018 2:41 am Post subject: Grub[UEFI], Booting in blind mode |
|
|
I want to see the bootup process over IPMI sol (supermicro motherboard). The grub menu appears with the menu options, however Gentoo boots i get the following message.
Code: |
Loading Linux 4.9.95-gentoo ...
Loading initial ramdisk ...
error: no suitable video mode found.
Booting in blind mode
|
Any idea why I dont see the boot process? The system otherwise boots successfully.
My grub.conf is like this,
Code: |
$cat /boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="0"
fi
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
serial --speed=115200 --unit=1 --word=8 --parity=no --stop=1
terminal_input serial
terminal_output serial
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=5
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Gentoo GNU/Linux' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-18a74c27cd9b234b' {
load_video
if [ "x$grub_platform" = xefi ]; then
set gfxpayload=keep
fi
insmod gzio
insmod part_gpt
insmod part_gpt
insmod zfs
set root='hd1,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,gpt2 --hint-efi=hd1,gpt2 --hint-baremetal=ahci1,gpt2 --hint-bios=hd2,gpt2 --hint-efi=hd2,gpt2 --hint-baremetal=ahci2,gpt2 a9f7c0f00ed9709c
else
search --no-floppy --fs-uuid --set=root a9f7c0f00ed9709c
fi
echo 'Loading Linux 4.9.95-gentoo ...'
linux /@/vmlinuz-4.9.95-gentoo root=ZFS=rpool/ROOT/gentoo ro spl.spl_hostid=0xa8c06f01 console=tty0 console=ttyS2,115200
echo 'Loading initial ramdisk ...'
initrd /@/initramfs-4.9.95-gentoo.img
}
submenu 'Advanced options for Gentoo GNU/Linux' $menuentry_id_option 'gnulinux-advanced-18a74c27cd9b234b' {
menuentry 'Gentoo GNU/Linux, with Linux 4.9.95-gentoo' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.9.95-gentoo-advanced-18a74c27cd9b234b' {
load_video
if [ "x$grub_platform" = xefi ]; then
set gfxpayload=keep
fi
insmod gzio
insmod part_gpt
insmod part_gpt
insmod zfs
set root='hd1,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,gpt2 --hint-efi=hd1,gpt2 --hint-baremetal=ahci1,gpt2 --hint-bios=hd2,gpt2 --hint-efi=hd2,gpt2 --hint-baremetal=ahci2,gpt2 a9f7c0f00ed9709c
else
search --no-floppy --fs-uuid --set=root a9f7c0f00ed9709c
fi
echo 'Loading Linux 4.9.95-gentoo ...'
linux /@/vmlinuz-4.9.95-gentoo root=ZFS=rpool/ROOT/gentoo ro spl.spl_hostid=0xa8c06f01 console=tty0 console=ttyS2,115200
echo 'Loading initial ramdisk ...'
initrd /@/initramfs-4.9.95-gentoo.img
}
menuentry 'Gentoo GNU/Linux, with Linux 4.9.95-gentoo (recovery mode)' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.9.95-gentoo-recovery-18a74c27cd9b234b' {
load_video
if [ "x$grub_platform" = xefi ]; then
set gfxpayload=keep
fi
insmod gzio
insmod part_gpt
insmod part_gpt
insmod zfs
set root='hd1,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,gpt2 --hint-efi=hd1,gpt2 --hint-baremetal=ahci1,gpt2 --hint-bios=hd2,gpt2 --hint-efi=hd2,gpt2 --hint-baremetal=ahci2,gpt2 a9f7c0f00ed9709c
else
search --no-floppy --fs-uuid --set=root a9f7c0f00ed9709c
fi
echo 'Loading Linux 4.9.95-gentoo ...'
linux /@/vmlinuz-4.9.95-gentoo root=ZFS=rpool/ROOT/gentoo ro single
echo 'Loading initial ramdisk ...'
initrd /@/initramfs-4.9.95-gentoo.img
}
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
|
and
/etc/default/grub is
Code: |
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
#
# To populate all changes in this file you need to regenerate your
# grub configuration file afterwards:
# 'grub2-mkconfig -o /boot/grub/grub.cfg'
#
# See the grub info page for documentation on possible variables and
# their associated values.
GRUB_DISTRIBUTOR="Gentoo"
# Default menu entry
#GRUB_DEFAULT=0
# Boot the default entry this many seconds after the menu is displayed
#GRUB_TIMEOUT=5
#GRUB_TIMEOUT_STYLE=menu
# Append parameters to the linux kernel command line
#GRUB_CMDLINE_LINUX=""
#
# Examples:
#
# Boot with network interface renaming disabled
# GRUB_CMDLINE_LINUX="net.ifnames=0"
#
# Boot with systemd instead of sysvinit (openrc)
# GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"
# Append parameters to the linux kernel command line for non-recovery entries
#GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX_DEFAULT="spl.spl_hostid=0xa8c06f01 console=tty0 console=ttyS2,115200"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal.
# Note that you can use only modes which your graphic card supports via VBE.
# You can see them in real GRUB with the command `vbeinfo'.
#GRUB_GFXMODE=640x480
# Set to 'text' to force the Linux kernel to boot in normal text
# mode, 'keep' to preserve the graphics mode set using
# 'GRUB_GFXMODE', 'WIDTHxHEIGHT'['xDEPTH'] to set a particular
# graphics mode, or a sequence of these separated by commas or
# semicolons to try several modes in sequence.
#GRUB_GFXPAYLOAD_LINUX=
# Path to theme spec txt file.
# The starfield is by default provided with use truetype.
# NOTE: when enabling custom theme, ensure you have required font/etc.
#GRUB_THEME="/boot/grub/themes/starfield/theme.txt"
# Background image used on graphical terminal.
# Can be in various bitmap formats.
#GRUB_BACKGROUND="/boot/grub/mybackground.png"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to kernel
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY=true
# Uncomment to disable generation of the submenu and put all choices on
# the top-level menu.
# Besides the visual affect of no sub menu, this makes navigation of the
# menu easier for a user who can't see the screen.
#GRUB_DISABLE_SUBMENU=y
# Uncomment to play a tone when the main menu is displayed.
# This is useful, for example, to allow users who can't see the screen
# to know when they can make a choice on the menu.
#GRUB_INIT_TUNE="60 800 1"
## Serial console
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=1 --word=8 --parity=no --stop=1"
|
|
|
Back to top |
|
|
LIsLinuxIsSogood Veteran
Joined: 13 Feb 2016 Posts: 1186
|
Posted: Sat Jul 07, 2018 1:55 am Post subject: |
|
|
This is by no means an answer to your problem because I am not really knowledge about out IPMI , but am now just reading about it for the first time (it is really cool stuff).
Assuming that everything is fine with your Gentoo system (and you have KMS set in the kernel, etc. for a perfectly working video setting otherwise)...
Can you clarify that the code you printed, is the result of running some command, and what command you ran in order to produce that output (thesuccessful boot but with no process log and showing the error) What command was that you ran to connect to the console?
Did you use something like this to do that...
Code: | ipmitool -H {YOUR BMC IP} -U {YOUR USER} -I lanplus sol activate
|
Also it seems like the grub entry is definitely not my forte in terms of knowing answers but I will be sure to check back and see if you were able to find out more of a solution hopefully with the help of someone here, if the problem is fixable that is. |
|
Back to top |
|
|
trumee Guru
Joined: 02 Mar 2003 Posts: 551 Location: London,UK
|
Posted: Sat Jul 07, 2018 2:36 am Post subject: |
|
|
@LIsLinuxIsSogood, yes that is command i am using show serial output.
I have had some progress on this. I added the parity bit to the serial device definition and was able to get a half working solution.
The kernel command line definition in grub to,
Code: |
linux /@/vmlinuz-4.9.95-gentoo root=ZFS=rpool/ROOT/gentoo ro spl.spl_hostid=0xa8c06f01 console=tty0 console=ttyS1,115200n8
|
In addition I modified /etc/inittab to
Code: |
s1:12345:respawn:/sbin/agetty -L 115200 ttyS1 vt100
|
Now IPMI sol does show the boot process. However mid way through the boot (after dracut root switch) it stops the output over the console.
The output is shown here.
I have 3 serial ports on the motherboard.
Code: |
# setserial -g /dev/ttyS[012]
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x0248, IRQ: 7
/dev/ttyS2, UART: 16550A, Port: 0xf0a0, IRQ: 19
|
The IPMI SOL seems to be outputting over ttyS1.
Any idea why the output fails after dracut? |
|
Back to top |
|
|
LIsLinuxIsSogood Veteran
Joined: 13 Feb 2016 Posts: 1186
|
Posted: Mon Jul 09, 2018 7:41 pm Post subject: |
|
|
IDK have you checked /etc/hostid for clues yet?
Also do you have a system logger that is set to capture these messages anyhow? Maybe you could setup another terminal like I have on all "regular" linux installs of mine to output various logging facilities to vt10 to be able to switch over to that and see what is happening. If that isn't exactly a solution then it's because I don't have much experience with using dracut or initramfs for that matter (boot times are very fast on all machines without it...)
By the way are you running systemd or openrc on the machine??? |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|