Thanks for looking!
Problem: 6 boot options appear in /boot/grub/grub.cfg, but when booting, only 4 are offered.
I'm new to grub2, even if it doesn't feel like it after all I've been reading. I must be missing something obvious. Thanks for pointing me in the right direction!
Background and so what: My wife has used a Linux desktop for years, but a Windows laptop also, because she uses powerpoint and finds the open source versions inadequate. After a recent automatic MS update to her vintage laptop, lost her user profile, as well as her patience with MS.
It turns out it really wasn't Mr Gate's fault.
I installed a larger hard drive and split it in half, one to copy her old XP and one for F16 LXDE.
The old drive had three partitions: (1) a small fat16 with Dell hardware diagnostics; (2) roughly 36GB ntfs Windows XP; and (3) fairly small fat32 partition, presumably a recovery parition.
Clonezilla copied (1) and (3) fine, but failed on the main Windows partition, when it encountered bad blocks.
I read the F16 ddrescue documentation and used it to recover all but ~5kB. The part that was lost, it seems, is not critical, though I'm pretty sure that it's what accounts for her lost profile. The old drive still boots and Windows XP runs without objections. The copied partition mounts in F16 without objection and look fine. After all this I ran "grub2-mkconfig -o /boot/grub/grub.cfg" successfully. The "boot" flag is toggled on in the Windows partition (/dev/sda2).
When booting, only four options are offered by grub:
(1) the update F16 kernel;
(2) the original installation F16 kernel;
(3) original kernel recovery; and
(4) Dell hardware diagnostics (/dev/sda1, fat16).
Grub.cfg has six options. In addition to the previous four,
(5) update kernel recovery and
(6) Windows XP
Here is my grub.cfg
Code:
#
# 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
set default="${saved_entry}"
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 {
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
}
set timeout=5
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Fedora Linux, with Linux 3.1.5-2.fc16.i686' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set=root 4a4eea7d-55f5-4e33-8979-8e3b3465ac09
echo 'Loading Linux 3.1.5-2.fc16.i686 ...'
linux /vmlinuz-3.1.5-2.fc16.i686 root=/dev/mapper/vg_pacificavenue-lv_root ro rd.lvm.lv=vg_pacificavenue/lv_root rd.dm=0 rd.lvm.lv=vg_pacificavenue/lv_swap KEYTABLE=us quiet SYSFONT=latarcyrheb-sun16 rd.md=0 rd.luks.uuid=luks-44601428-69c5-4f67-9e2f-27ad8cca1aa6 LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /initramfs-3.1.5-2.fc16.i686.img
}
menuentry 'Fedora Linux, with Linux 3.1.5-2.fc16.i686 (recovery mode)' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set=root 4a4eea7d-55f5-4e33-8979-8e3b3465ac09
echo 'Loading Linux 3.1.5-2.fc16.i686 ...'
linux /vmlinuz-3.1.5-2.fc16.i686 root=/dev/mapper/vg_pacificavenue-lv_root ro single rd.lvm.lv=vg_pacificavenue/lv_root rd.dm=0 rd.lvm.lv=vg_pacificavenue/lv_swap KEYTABLE=us quiet SYSFONT=latarcyrheb-sun16 rd.md=0 rd.luks.uuid=luks-44601428-69c5-4f67-9e2f-27ad8cca1aa6 LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /initramfs-3.1.5-2.fc16.i686.img
}
menuentry 'Fedora Linux, with Linux 3.1.0-7.fc16.i686' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set=root 4a4eea7d-55f5-4e33-8979-8e3b3465ac09
echo 'Loading Linux 3.1.0-7.fc16.i686 ...'
linux /vmlinuz-3.1.0-7.fc16.i686 root=/dev/mapper/vg_pacificavenue-lv_root ro rd.lvm.lv=vg_pacificavenue/lv_root rd.dm=0 rd.lvm.lv=vg_pacificavenue/lv_swap KEYTABLE=us quiet SYSFONT=latarcyrheb-sun16 rd.md=0 rd.luks.uuid=luks-44601428-69c5-4f67-9e2f-27ad8cca1aa6 LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /initramfs-3.1.0-7.fc16.i686.img
}
menuentry 'Fedora Linux, with Linux 3.1.0-7.fc16.i686 (recovery mode)' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set=root 4a4eea7d-55f5-4e33-8979-8e3b3465ac09
echo 'Loading Linux 3.1.0-7.fc16.i686 ...'
linux /vmlinuz-3.1.0-7.fc16.i686 root=/dev/mapper/vg_pacificavenue-lv_root ro single rd.lvm.lv=vg_pacificavenue/lv_root rd.dm=0 rd.lvm.lv=vg_pacificavenue/lv_swap KEYTABLE=us quiet SYSFONT=latarcyrheb-sun16 rd.md=0 rd.luks.uuid=luks-44601428-69c5-4f67-9e2f-27ad8cca1aa6 LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /initramfs-3.1.0-7.fc16.i686.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 ###
menuentry "Dell Utility Partition (on /dev/sda1)" --class windows --class os {
insmod part_msdos
insmod fat
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root 07d5-0813
drivemap -s (hd0) ${root}
chainloader +1
}
menuentry "Microsoft Windows XP Home Edition (on /dev/sda2)" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos2)'
search --no-floppy --fs-uuid --set=root B6FC9EFAFC9EB459
drivemap -s (hd0) ${root}
chainloader +1
}
### 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 $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
Here is /etc/default/grub:
Code:
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Fedora"
GRUB_DEFAULT=saved
GRUB_CMDLINE_LINUX="rd.lvm.lv=vg_pacificavenue/lv_root rd.dm=0 rd.lvm.lv=vg_pacificavenue/lv_swap KEYTABLE=us quiet SYSFONT=latarcyrheb-sun16 rd.md=0 rd.luks.uuid=luks-44601428-69c5-4f67-9e2f-27ad8cca1aa6 LANG=en_US.UTF-8"
Following the Fedora documentation, I have even tried setting the default boot device to the Windows partition, but nothing changes.
Thanks for any help!