Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

When I boot grub doesnt show up (only ubuntu installed) I would like grub to be shown for a second or 2 (shift doesnt seem to bring it up). My main problem is that grub boots into what i assume to be recovery mode, I can login as myself and startx but that is obviously a right pain. Could someone please advise me on how to remedy this problem?

Grub.cfg:

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/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
set default="1"
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 recordfail {
  set recordfail=1
  if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 1cd98d8a-97b3-4f25-9da2-e7128ef6dcba
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  insmod gfxterm
  insmod vbe
  if terminal_output gfxterm ; then true ; else
    # For backward compatibility with versions of terminal.mod that don't
    # understand terminal_output
    terminal gfxterm
  fi
fi
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 1cd98d8a-97b3-4f25-9da2-e7128ef6dcba
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
if [ ${recordfail} = 1 ]; then
  set timeout=-1
else
  set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.32-25-generic' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod ext2
    set root='(hd0,6)'
    search --no-floppy --fs-uuid --set 1cd98d8a-97b3-4f25-9da2-e7128ef6dcba
    linux   /boot/vmlinuz-2.6.32-25-generic root=UUID=1cd98d8a-97b3-4f25-9da2-e7128ef6dcba ro   quiet splash
    initrd  /boot/initrd.img-2.6.32-25-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-25-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod ext2
    set root='(hd0,6)'
    search --no-floppy --fs-uuid --set 1cd98d8a-97b3-4f25-9da2-e7128ef6dcba
    echo    'Loading Linux 2.6.32-25-generic ...'
    linux   /boot/vmlinuz-2.6.32-25-generic root=UUID=1cd98d8a-97b3-4f25-9da2-e7128ef6dcba ro single 
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-2.6.32-25-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-21-generic' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod ext2
    set root='(hd0,6)'
    search --no-floppy --fs-uuid --set 1cd98d8a-97b3-4f25-9da2-e7128ef6dcba
    linux   /boot/vmlinuz-2.6.32-21-generic root=UUID=1cd98d8a-97b3-4f25-9da2-e7128ef6dcba ro   quiet splash
    initrd  /boot/initrd.img-2.6.32-21-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-21-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod ext2
    set root='(hd0,6)'
    search --no-floppy --fs-uuid --set 1cd98d8a-97b3-4f25-9da2-e7128ef6dcba
    echo    'Loading Linux 2.6.32-21-generic ...'
    linux   /boot/vmlinuz-2.6.32-21-generic root=UUID=1cd98d8a-97b3-4f25-9da2-e7128ef6dcba ro single 
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-2.6.32-21-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
    insmod ext2
    set root='(hd0,6)'
    search --no-floppy --fs-uuid --set 1cd98d8a-97b3-4f25-9da2-e7128ef6dcba
    linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
    insmod ext2
    set root='(hd0,6)'
    search --no-floppy --fs-uuid --set 1cd98d8a-97b3-4f25-9da2-e7128ef6dcba
    linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
if [ ${timeout} != -1 ]; then
  if keystatus; then
    if keystatus --shift; then
      set timeout=-1
    else
      set timeout=0
    fi
  else
    if sleep --interruptible 3 ; then
      set timeout=0
    fi
  fi
fi
### 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 ###
share|improve this question
add comment

1 Answer

up vote 6 down vote accepted

/boot/grub/grub.cfg should not be edited directly. Instead, options like GRUB_TIMEOUT can be configured in /etc/default/grub Here's a sample of what that file looks like:

# 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="quiet splash"
GRUB_CMDLINE_LINUX=""

# 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"

GRUB_DEFAULT sets the default menu entry. For instance, GRUB_DEFAULT=0 highlights the 1st menu entry. 1 would be the second. Perhaps a recovery session is set as the default?

On machines with only a single OS, like yours, GRUB_HIDDEN_TIMEOUT=0 hides the menu. Make sure that this line is commented. If multiple OS's are present this setting is ignored. Also make sure the GRUB_TIMEOUT value is greater than 0. This is the number of seconds before the default entry is automatically booted.

After any changes to /etc/default/grubmake sure to run sudo update-grub to update your configuration.

More details can be found here:

https://help.ubuntu.com/community/Grub2

share|improve this answer
    
Thanks very much for the informative answer! –  Will Oct 3 '10 at 17:47
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.