LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - General
User Name
Password
Linux - General This Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.

Notices


Reply
  Search this Thread
Old 02-20-2014, 10:59 PM   #1
nw_biohazard
LQ Newbie
 
Registered: Feb 2014
Posts: 9

Rep: Reputation: Disabled
GRUB2 proglem: No grub menu but system continues on to boot


I cannot get GRUB2 to display the grub menu on startup. The system loads the BIOS, then the screen goes blank. After what seems like the appropriate timeout based on /boot/grub.cfg, the system continues on to boot linux successfully. After playing around with GRUB_TIMEOUT, I am pretty sure that the menu is actually there and working properly, just not being displayed on the screen which is entirely blank. Any clues to this one?

Here is my /boot/grub/grub.cfg:
http://pastebin.com/VuG2Y0Dr

And here is /etc/default/grub:
http://pastebin.com/qC3HYsyf

And here is the output of lspci:
http://pastebin.com/K2kVGmpB
 
Old 02-21-2014, 11:10 AM   #2
phazon
Member
 
Registered: Apr 2006
Location: Wilmington, DE
Distribution: SolydXK, Knoppix
Posts: 151

Rep: Reputation: 18
https://help.ubuntu.com/community/Boot-Repair
 
Old 02-21-2014, 04:34 PM   #3
syg00
LQ Veteran
 
Registered: Aug 2003
Location: Australia
Distribution: Lots ...
Posts: 21,128

Rep: Reputation: 4121Reputation: 4121Reputation: 4121Reputation: 4121Reputation: 4121Reputation: 4121Reputation: 4121Reputation: 4121Reputation: 4121Reputation: 4121Reputation: 4121
You can always use the <Shift> key to show the menu during the countdown.
Try commenting out the GRUB_HIDDEN_TIMEOUT=0 - and I assume you're re-running mkconfig/update-grub each change.
Been too long since I played around with all those bloody variables to be definite - and there is also some interplay between them.
 
Old 02-22-2014, 07:58 AM   #4
yo8rxp
Member
 
Registered: Jul 2009
Location: Romania
Distribution: Ubuntu 10.04 Gnome 2
Posts: 102

Rep: Reputation: 31
Damn , it is weard ! in grub cfg timeout is set to 10 but in default is 0 , like u didnt update-grub
Is GRUB waiting 10 seconds before booting or not ( 0 seconds ) ????
 
Old 02-22-2014, 01:01 PM   #5
nw_biohazard
LQ Newbie
 
Registered: Feb 2014
Posts: 9

Original Poster
Rep: Reputation: Disabled
Thanks for the advice. I tried commenting out GRUB_HIDDEN_TIMEOUT. I also tried setting GRUB_HIDDEN_TIMEOUT=7. Verified that grub.cfg is being rebuilt in each case using "grub2-mkconfig -o /boot/grub/grub.cfg"

I also tried with and without holding down <SHIFT> during booting with both of these variable settings.

Still no grub menu.

I suspect this has something to do with grub not being able to properly access the video card have no idea where to start exploring that.
 
Old 02-23-2014, 10:53 AM   #6
yo8rxp
Member
 
Registered: Jul 2009
Location: Romania
Distribution: Ubuntu 10.04 Gnome 2
Posts: 102

Rep: Reputation: 31
this is one of my grub default

Quote:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# 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

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

and this is my old trusted Ubuntu 10.04
Quote:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX=" vga=789"

# 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

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_LINUX_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
one is grub 2 , the second is grub

allways use depends on distro (sudo ) update-grub after altering it

Last edited by yo8rxp; 02-23-2014 at 10:57 AM.
 
Old 02-23-2014, 04:23 PM   #7
nw_biohazard
LQ Newbie
 
Registered: Feb 2014
Posts: 9

Original Poster
Rep: Reputation: Disabled
Thanks for the suggestions. I tried setting GRUB_HIDDEN_TIMEOUT_QUIET=false since the man page implied that that should show a countdown. I don't see the countdown. I still suspect it is some video driver problem. From the grub2 info page:
Quote:
`GRUB_VIDEO_BACKEND'
If graphical video support is required, either because the
`gfxterm' graphical terminal is in use or because
`GRUB_GFXPAYLOAD_LINUX' is set, then `grub-mkconfig' will normally
load all available GRUB video drivers and use the one most
appropriate for your hardware. If you need to override this for
some reason, then you can set this option.

After `grub-install' has been run, the available video drivers are
listed in `/boot/grub/video.lst'.
I don't have a "video.lst" in /boot/grub.

The variables I have /etc/default/grub are as follows:
Quote:
GRUB_DISTRIBUTOR="Gentoo"

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=false
GRUB_TIMEOUT=10

# Append parameters to the linux kernel command line
# GRUB_CMDLINE_LINUX=""

# Append parameters to the linux kernel command line for non-recovery entries
#GRUB_CMDLINE_LINUX_DEFAULT=""

# Uncomment to disable graphical terminal (grub-pc only)
GRUB_TERMINAL=console

# Added based on Gentoo forum post. 2014-02-16.
GRUB_VIDEO_BACKEND=vbe
GRUB_GFXPAYLOAD_LINUX=640x480
GRUB_COLOR_HIGHLIGHT="magenta/black"
GRUB_COLOR_NORMAL="white/black"
 
Old 04-10-2014, 07:25 PM   #8
nw_biohazard
LQ Newbie
 
Registered: Feb 2014
Posts: 9

Original Poster
Rep: Reputation: Disabled
Update after another read of the GRUB manual, more hacking with numerous combinations of parameters in /etc/default/grub, and testing a couple of different keyboards. No combination of parameters I have tried so far has caused the grub menu to appear.

As far as I can tell, grub is responding correctly to the setting of
Quote:
GRUB_TIMEOUT
Setting it to some positive number causes the system to wait that long unless a carriage return is entered to launch the default entry. Setting it to 0 causes immediate boot of the default. Setting it to -1 causes grub to wait for a carriage return.

Setting
Quote:
GRUB_HIDDEN_TIMEOUT
to a negative number does not seem to have any effect.

Setting
Quote:
GRUB_TERMINAL=console
also has no effect.

I also tried commenting everything out of /etc/default/grub and running
Quote:
grub2-mkconfig -o /boot/grub/grub.cfg
with no effect.

I suspect this might be a hardware issue. I'm running an ASUS P8H67-M motherboard with integrated Intel Integrated Graphics Processor. If anyone has a working grub2 configuration for a similar system, it would be great to see it.

Here is my current /etc/grub/default
Quote:
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/files/grub.default-2,v 1.4 2013/09/21 18:10:55 floppym Exp $
#
# 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"

#GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
#GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10

# Append parameters to the linux kernel command line
# GRUB_CMDLINE_LINUX=""

# Append parameters to the linux kernel command line for non-recovery entries
#GRUB_CMDLINE_LINUX_DEFAULT=""

# 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

# 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
And the resulting /boot/grub/grub.cfg

Quote:
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub2-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
}

terminal_input console
terminal_output console
set timeout=10
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'GNU/Linux' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-3040ad5f-dc72-4d55-a9c5-9e70d8d2af4f' {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' 1827a922-6faf-49d2-b6d9-8cdbe5255347
else
search --no-floppy --fs-uuid --set=root 1827a922-6faf-49d2-b6d9-8cdbe5255347
fi
echo 'Loading Linux 3.2.1-gentoo-r2 ...'
linux /kernel-3.2.1-gentoo-r2 root=/dev/sda3 ro
}
submenu 'Advanced options for GNU/Linux' $menuentry_id_option 'gnulinux-advanced-3040ad5f-dc72-4d55-a9c5-9e70d8d2af4f' {
menuentry 'GNU/Linux, with Linux 3.2.1-gentoo-r2' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.2.1-gentoo-r2-advanced-3040ad5f-dc72-4d55-a9c5-9e70d8d2af4f' {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' 1827a922-6faf-49d2-b6d9-8cdbe5255347
else
search --no-floppy --fs-uuid --set=root 1827a922-6faf-49d2-b6d9-8cdbe5255347
fi
echo 'Loading Linux 3.2.1-gentoo-r2 ...'
linux /kernel-3.2.1-gentoo-r2 root=/dev/sda3 ro
}
menuentry 'GNU/Linux, with Linux 3.2.1-gentoo-r2 (recovery mode)' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.2.1-gentoo-r2-recovery-3040ad5f-dc72-4d55-a9c5-9e70d8d2af4f' {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' 1827a922-6faf-49d2-b6d9-8cdbe5255347
else
search --no-floppy --fs-uuid --set=root 1827a922-6faf-49d2-b6d9-8cdbe5255347
fi
echo 'Loading Linux 3.2.1-gentoo-r2 ...'
linux /kernel-3.2.1-gentoo-r2 root=/dev/sda3 ro single
}
}

### 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 ###
 
Old 04-10-2014, 08:22 PM   #9
colorpurple21859
LQ Veteran
 
Registered: Jan 2008
Location: florida panhandle
Distribution: Slackware Debian, Fedora, others
Posts: 7,350

Rep: Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590
If this is an efi system see if there is a grub.cfg in /boot/efi/EFI/ubuntu and if so back it up and copy the /boot/grub/grub.cfg to /boot/efi/EFI/gentoo/grub.cfg. Going by your grub.cfg /dev/sda1 is an efi boot partition and should be mounted to /boot/efi.

Last edited by colorpurple21859; 04-10-2014 at 08:27 PM.
 
Old 04-10-2014, 08:35 PM   #10
nw_biohazard
LQ Newbie
 
Registered: Feb 2014
Posts: 9

Original Poster
Rep: Reputation: Disabled
I don't have /boot/efi:

Quote:
# ls -al /boot
boot
grub
hide_kernel-3.2.1-gentoo-r2-orig
kernel-3.2.1-gentoo-r2
lost+found
 
Old 04-10-2014, 08:39 PM   #11
colorpurple21859
LQ Veteran
 
Registered: Jan 2008
Location: florida panhandle
Distribution: Slackware Debian, Fedora, others
Posts: 7,350

Rep: Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590
okay, I seen this
Quote:
--set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1
in your grub.cfg that got me to thinking efi
 
Old 04-10-2014, 08:54 PM   #12
nw_biohazard
LQ Newbie
 
Registered: Feb 2014
Posts: 9

Original Poster
Rep: Reputation: Disabled
Thanks. Not sure what to make of that line.

The system boots fine, I just can't ever get the menu to display, regardless of what options I have tried when configuring grub. Very strange.

When I boot off of USB stick with SystemRescueCD installed, I get a grub2 menu but comparing the grub.cfg file from that setup to the one on my hard-drive hasn't proven useful yet.
Here it is in case it gives anyone any clues:

Quote:
# Global options
set timeout=90
set default=0
set fallback=1
set pager=1

# Display settings
if loadfont /boot/grub/font.pf2 ; then
set gfxmode=auto
insmod efi_gop
insmod efi_uga
insmod gfxterm
terminal_output gfxterm
fi

menuentry "SystemRescueCd (64bit, default boot options)" {
set gfxpayload=keep
linux /isolinux/rescue64
initrd /isolinux/initram.igz
}

menuentry "SystemRescueCd (64bit, cache all files in memory)" {
set gfxpayload=keep
linux /isolinux/rescue64 docache
initrd /isolinux/initram.igz
}

menuentry "SystemRescueCd (64bit, alternative kernel with default options)" {
set gfxpayload=keep
linux /isolinux/altker64
initrd /isolinux/initram.igz
}

menuentry "SystemRescueCd (64bit, disable Kernel-Mode-Settings)" {
set gfxpayload=keep
linux /isolinux/rescue64 nomodeset
initrd /isolinux/initram.igz
}

menuentry "SystemRescueCd (64bit, directly start the grahical environment)" {
set gfxpayload=keep
linux /isolinux/rescue64 dostartx
initrd /isolinux/initram.igz
}

menuentry "Boot exising Linux OS installed on the disk (64bit kernel)" {
set gfxpayload=keep
linux /isolinux/rescue64 root=auto
initrd /isolinux/initram.igz
}
 
Old 04-10-2014, 09:31 PM   #13
colorpurple21859
LQ Veteran
 
Registered: Jan 2008
Location: florida panhandle
Distribution: Slackware Debian, Fedora, others
Posts: 7,350

Rep: Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590
What is on dev/sda1? If there is a /EFI with subdirectories and one of them has a grub.cfg. Maybe renaming it and replacing it with the /boot/grub/grub.cfg will fix things.
 
Old 04-10-2014, 09:37 PM   #14
nw_biohazard
LQ Newbie
 
Registered: Feb 2014
Posts: 9

Original Poster
Rep: Reputation: Disabled
I don't seem to have any /EFI or /efi directories that I can find.
 
Old 04-10-2014, 09:38 PM   #15
colorpurple21859
LQ Veteran
 
Registered: Jan 2008
Location: florida panhandle
Distribution: Slackware Debian, Fedora, others
Posts: 7,350

Rep: Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590Reputation: 1590
Nevermind. I just got done looking at my grub.cfg for ubuntu and I also have efi-hint in my grub.cfg and I know my computer isn't booting in efi mode.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Can't get colors in grub2 boot menu. slackin1stimer Slackware 2 12-26-2012 08:12 AM
How do you incorporate a Grub2 OS into a menu.lst file in Grub Legacy rusty2 Linux - Software 12 03-08-2011 08:52 AM
[SOLVED] Editing the grub2 boot menu in a dual boot machine Chriscrof Linux - Newbie 13 07-15-2010 01:14 AM
GRUB2 - FreeBSD-8.0 does not show up in triple boot menu, dual boot menu it does.. wiliweld *BSD 7 05-03-2010 01:05 PM
Creating a Grub2 boot-cd with a (grub.cfg) menu ..my solution ssenuta Linux - General 3 02-04-2010 06:16 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - General

All times are GMT -5. The time now is 11:30 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration