grub.cfg has no menu entries for an OS; only for memtest86+
An update to a newly-installed instance of Kubuntu maverick i386 appeared to finish normally but went wrong. It has left the system with a grub.cfg with only two "menuentry" listings, both for memtest86+ (see below). Because kubuntu maverick is the only operating system on the computer, the original installation had set the timeout to zero. I am thus unable to start even a recovery console (in which I could edit /etc/default/grub).
I have two questions:
1. I believe this merits a bug report. Which package should I file a bug against?
2. I would appreciate some advice for recovering the system. I might not have framed my Google search very well.
The most readily available rescue CD is the original maverick desktop LiveCD. I have brought it up and attempted both an update-grub and grub-install, both directly from the command line and after mounting /dev/sda1 and issuing a chroot. Both efforts failed with an error message "cannot find a device for </boot/grub>|</> (is /dev mounted?)
Current state of 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.
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
set default="0"
if [ "${prev_
set 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_
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
}
function load_video {
insmod vbe
insmod vga
}
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set 58ce6d18-
if loadfont /usr/share/
set gfxmode=640x480
load_video
insmod gfxterm
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set 58ce6d18-
set locale_
set lang=en
insmod gettext
if [ "${recordfail}" = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.
### BEGIN /etc/grub.
set menu_color_
set menu_color_
### END /etc/grub.
### BEGIN /etc/grub.
### END /etc/grub.
### BEGIN /etc/grub.
### END /etc/grub.
### BEGIN /etc/grub.
menuentry "Memory test (memtest86+)" {
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set 58ce6d18-
linux16 /boot/memtest86
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set 58ce6d18-
linux16 /boot/memtest86
}
### END /etc/grub.
### BEGIN /etc/grub.
if [ "x${timeout}" != "x-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.
### BEGIN /etc/grub.
# 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.
### BEGIN /etc/grub.
if [ -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Ubuntu grub2 Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- delance
- Solved:
- Last query:
- Last reply: