[XP not in menu] windows not shown grub2 boot menu

Asked by Jimmy Superlative

Hi. Looked for a few days now for a fix....

After a system update and "clean-up" grub has "dropped" windows xp from my boot menu? The windows partition is there, but I am unable to get grub to load it or recognise it. I've tried a number of "fixes", have run update-grub and update-grub2 etc, but all to no avail.

I'm hoping someone will notice a glaringly obvious problem in the following outputs:

here's fdisk -l

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xe859e859

   Device Boot Start End Blocks Id System
/dev/sda1 * 1 47848 384338899 7 HPFS/NTFS
/dev/sda2 47849 60801 104044065+ 5 Extended
/dev/sda5 54253 55862 12932293+ 82 Linux swap / Solaris
/dev/sda6 47849 53985 49289216 83 Linux

...and here's my blkid

/dev/sda1: UUID="3F4DA7F758FB2ADB" TYPE="ntfs"
/dev/sda5: UUID="da1dc396-7150-4735-a1c0-50eb29c17437" TYPE="swap"
/dev/sda6: UUID="20551bbf-0231-4d14-846f-7d7cd3482642" TYPE="ext4"

...and here is grub-mkconfig -o /boot/grub/grub.cfg

Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-24-generic
Found initrd image: /boot/initrd.img-2.6.32-24-generic
Found linux image: /boot/vmlinuz-2.6.32-22-generic
Found initrd image: /boot/initrd.img-2.6.32-22-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sda1
done

Like I say I have tried a few things (even supergrub), but none of the fixes seem to be for my exact problem. It seems to me that there should be some easy way for me to direct grub to find and display my windows xp install?

Grateful for any help,

Jimmy

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu grub2 Edit question
Assignee:
No assignee Edit question
Solved by:
Jordan
Solved:
Last query:
Last reply:

This question was reopened

Revision history for this message
Jimmy Superlative (jimmysuperlative) said :
#1

Also tried a reinstall of grub2 following the guide https://help.ubuntu.com/community/Grub2#Reinstalling from LiveCD

...no improvement!

Revision history for this message
actionparsnip (andrew-woodhead666) said :
#2

Try simply running:

sudo update-grub

in terminal

Revision history for this message
wojox (wojox) said :
#3

You pressed the Shift key after the BIOS screen disappears, and kept it pressed?

Revision history for this message
Jordan (jordanu) said :
#4

Could you run boot info script as explained here: http://ubuntuforums.org/showthread.php?t=1291280 and post the RESULTS.txt?

Revision history for this message
Jimmy Superlative (jimmysuperlative) said :
#5

Tried update-grub and update-grub2 ...nothing!

Revision history for this message
Jimmy Superlative (jimmysuperlative) said :
#6

Thanks Jordan. Okay. Here is the RESULTS.txt from boot info script. Hope it helps...

Boot Info Summary: ==============================

 => Grub 2 is installed in the MBR of /dev/sda and looks on the same drive in
    partition #6 for /boot/grub.

sda1: _________________________________________________________________________

    File system: ntfs
    Boot sector type: Windows XP
    Boot sector info: No errors found in the Boot Parameter Block.
    Operating System: Windows XP
    Boot files/dirs: /boot.ini /ntldr /NTDETECT.COM

sda2: _________________________________________________________________________

    File system: Extended Partition
    Boot sector type: -
    Boot sector info:

sda5: _________________________________________________________________________

    File system: swap
    Boot sector type: -
    Boot sector info:

sda6: _________________________________________________________________________

    File system: ext4
    Boot sector type: -
    Boot sector info:
    Operating System: Ubuntu 10.04.1 LTS
    Boot files/dirs: /boot/grub/menu.lst /boot/grub/grub.cfg /etc/fstab
                       /boot/grub/core.img

=========================== Drive/Partition Info: =============================

Drive: sda ___________________ _____________________________________________________

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes

Partition Boot Start End Size Id System

/dev/sda1 * 63 768,677,860 768,677,798 7 HPFS/NTFS
/dev/sda2 768,679,934 976,768,064 208,088,131 5 Extended
/dev/sda5 871,558,443 897,423,029 25,864,587 82 Linux swap / Solaris
/dev/sda6 768,679,936 867,258,367 98,578,432 83 Linux

blkid -c /dev/null: ____________________________________________________________

Device UUID TYPE LABEL

/dev/sda1 3F4DA7F758FB2ADB ntfs
/dev/sda2: PTTYPE="dos"
/dev/sda5 da1dc396-7150-4735-a1c0-50eb29c17437 swap
/dev/sda6 20551bbf-0231-4d14-846f-7d7cd3482642 ext4
/dev/sda: PTTYPE="dos"

============================ "mount | grep ^/dev output: ===========================

Device Mount_Point Type Options

/dev/sda6 / ext4 (rw,errors=remount-ro)

================================ sda1/boot.ini: ================================

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

=========================== sda6/boot/grub/menu.lst: ===========================

# menu.lst - See: grub(8), info grub, update-grub(8)
# grub-install(8), grub-floppy(8),
# grub-md5-crypt, /usr/share/doc/grub
# and /usr/share/doc/grub-doc/.

## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not use 'savedefault' or your
# array will desync and will not let you boot your system.
default 4

## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout 15

## hiddenmenu
# Hides the menu by default (press ESC to see the menu)
#hiddenmenu

# Pretty colours
#color cyan/blue white/blue

## password ['--md5'] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line) and entries protected by the
# command 'lock'
# e.g. password topsecret
# password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret

#
# examples
#
# title Windows 95/98/NT/2000
# root (hd0,0)
# makeactive
# chainloader +1
#
# title Linux
# root (hd0,1)
# kernel /vmlinuz root=/dev/hda2 ro
#

#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
## kopt_2_6_8=root=/dev/hdc1 ro
## kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=UUID=58a99253-9093-4dd9-ae5c-395f93947ddd ro

## default grub root device
## e.g. groot=(hd0,0)
# groot=58a99253-9093-4dd9-ae5c-395f93947ddd

## should update-grub create alternative automagic boot options
## e.g. alternative=true
## alternative=false
# alternative=true

## should update-grub lock alternative automagic boot options
## e.g. lockalternative=true
## lockalternative=false
# lockalternative=false

## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=quiet splash

## should update-grub lock old automagic boot options
## e.g. lockold=false
## lockold=true
# lockold=false

## Xen hypervisor options to use with the default Xen boot option
# xenhopt=

## Xen Linux kernel options to use with the default Xen boot option
# xenkopt=console=tty0

## altoption boot targets option
## multiple altoptions lines are allowed
## e.g. altoptions=(extra menu suffix) extra boot options
## altoptions=(recovery) single
# altoptions=(recovery mode) single

## controls how many kernels should be put into the menu.lst
## only counts the first occurence of a kernel, not the
## alternative kernel options
## e.g. howmany=all
## howmany=7
# howmany=all

## specify if running in Xen domU or have grub detect automatically
## update-grub will ignore non-xen kernels when running in domU and vice versa
## e.g. indomU=detect
## indomU=true
## indomU=false
# indomU=detect

## should update-grub create memtest86 boot option
## e.g. memtest86=true
## memtest86=false
# memtest86=true

## should update-grub adjust the value of the default booted system
## can be true or false
# updatedefaultentry=false

## should update-grub add savedefault to the default options
## can be true or false
# savedefault=false

## ## End Default Options ##

title Ubuntu 9.04, kernel 2.6.28-17-generic
uuid 58a99253-9093-4dd9-ae5c-395f93947ddd
kernel /boot/vmlinuz-2.6.28-17-generic root=UUID=58a99253-9093-4dd9-ae5c-395f93947ddd ro quiet splash
initrd /boot/initrd.img-2.6.28-17-generic
quiet

title Ubuntu 9.04, kernel 2.6.28-17-generic (recovery mode)
uuid 58a99253-9093-4dd9-ae5c-395f93947ddd
kernel /boot/vmlinuz-2.6.28-17-generic root=UUID=58a99253-9093-4dd9-ae5c-395f93947ddd ro single
initrd /boot/initrd.img-2.6.28-17-generic

title Ubuntu 9.04, memtest86+
uuid 58a99253-9093-4dd9-ae5c-395f93947ddd
kernel /boot/memtest86+.bin
quiet

### END DEBIAN AUTOMAGIC KERNELS LIST

# This is a divider, added to separate the menu items below from the Debian
# ones.
title Other operating systems:
root

# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/sda1
title Microsoft Windows XP Professional
rootnoverify (hd0,0)
savedefault
makeactive
chainloader +1

=========================== sda6/boot/grub/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="5"
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 20551bbf-0231-4d14-846f-7d7cd3482642
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=1024x768
  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 20551bbf-0231-4d14-846f-7d7cd3482642
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-24-generic' --class ubuntu --class gnu-linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd0,6)'
 search --no-floppy --fs-uuid --set 20551bbf-0231-4d14-846f-7d7cd3482642
 linux /boot/vmlinuz-2.6.32-24-generic root=UUID=20551bbf-0231-4d14-846f-7d7cd3482642 ro quiet vga=773 quiet splash
 initrd /boot/initrd.img-2.6.32-24-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-24-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 20551bbf-0231-4d14-846f-7d7cd3482642
 echo 'Loading Linux 2.6.32-24-generic ...'
 linux /boot/vmlinuz-2.6.32-24-generic root=UUID=20551bbf-0231-4d14-846f-7d7cd3482642 ro single quiet vga=773
 echo 'Loading initial ramdisk ...'
 initrd /boot/initrd.img-2.6.32-24-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-22-generic' --class ubuntu --class gnu-linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd0,6)'
 search --no-floppy --fs-uuid --set 20551bbf-0231-4d14-846f-7d7cd3482642
 linux /boot/vmlinuz-2.6.32-22-generic root=UUID=20551bbf-0231-4d14-846f-7d7cd3482642 ro quiet vga=773 quiet splash
 initrd /boot/initrd.img-2.6.32-22-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-22-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 20551bbf-0231-4d14-846f-7d7cd3482642
 echo 'Loading Linux 2.6.32-22-generic ...'
 linux /boot/vmlinuz-2.6.32-22-generic root=UUID=20551bbf-0231-4d14-846f-7d7cd3482642 ro single quiet vga=773
 echo 'Loading initial ramdisk ...'
 initrd /boot/initrd.img-2.6.32-22-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 20551bbf-0231-4d14-846f-7d7cd3482642
 linux16 /boot/memtest86+.bin
}
#menuentry "Memory test (memtest86+, serial console 115200)" {
#EOF
# printf '%s\n' " insmod ext2
 set root='(hd0,6)'
 search --no-floppy --fs-uuid --set 20551bbf-0231-4d14-846f-7d7cd3482642"
# cat << EOF
# linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Microsoft Windows XP Professional (on /dev/sda1)" {
 insmod ntfs
 set root='(hd0,1)'
 search --no-floppy --fs-uuid --set 3f4da7f758fb2adb
 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
menuentry "Windows XP" {
insmod chain
insmod ntfs
search --fs-uuid --set 3F4DA7F758FB2ADB
chainloader +1
}

### END /etc/grub.d/40_custom ###

=============================== sda6/etc/fstab: ===============================

# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc nodev,noexec,nosuid 0 0
# / was on /dev/sda7 during installation
UUID=20551bbf-0231-4d14-846f-7d7cd3482642 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda8 during installation
UUID=7c8eb935-a7fa-4e9b-a9f2-bafe5d517fd8 none swap sw 0 0

=================== sda6: Location of files loaded by Grub: ===================

 432.3GB: boot/grub/core.img
 411.5GB: boot/grub/grub.cfg
 432.3GB: boot/grub/menu.lst
 432.4GB: boot/initrd.img-2.6.32-22-generic
 432.5GB: boot/initrd.img-2.6.32-24-generic
 432.5GB: boot/vmlinuz-2.6.32-22-generic
 432.5GB: boot/vmlinuz-2.6.32-24-generic
 432.5GB: initrd.img
 432.4GB: initrd.img.old
 432.5GB: vmlinuz
 432.5GB: vmlinuz.old

....... Thank you!

Revision history for this message
Jimmy Superlative (jimmysuperlative) said :
#7

Thanks wojox, that solved my question.

Revision history for this message
Jimmy Superlative (jimmysuperlative) said :
#8

Don't know what/when I clicked "solved" ...but it isn't ?!

Please help!!!! Thank you!

Revision history for this message
wojox (wojox) said :
#9

So it loads the grub2 screen and you can choose Windows or Ubuntu, but when you choose Windows it won't load?

The grub.cfg script sees it:

Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-24-generic
Found initrd image: /boot/initrd.img-2.6.32-24-generic
Found linux image: /boot/vmlinuz-2.6.32-22-generic
Found initrd image: /boot/initrd.img-2.6.32-22-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sda1
done

Revision history for this message
Jimmy Superlative (jimmysuperlative) said :
#10

No. Even though it says it (XP) should be there, it isn't. There is no option to choose windows xp at the grub screen, only options relating to these...

Found linux image: /boot/vmlinuz-2.6.32-24-generic
Found initrd image: /boot/initrd.img-2.6.32-24-generic
Found linux image: /boot/vmlinuz-2.6.32-22-generic
Found initrd image: /boot/initrd.img-2.6.32-22-generic
Found memtest86+ image: /boot/memtest86+.bin

   even though grub finds windows, it is not displayed as an option...

Found Microsoft Windows XP Professional on /dev/sda1
done

??? I don't know?

Revision history for this message
Best Jordan (jordanu) said :
#11

The problem is with this portion of the grub.cfg:

#menuentry "Memory test (memtest86+, serial console 115200)" {
#EOF
# printf '%s\n' " insmod ext2
       set root='(hd0,6)'
       search --no-floppy --fs-uuid --set 20551bbf-0231-4d14-846f-7d7cd3482642"
# cat << EOF
# linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}

It looks like you (or someone else) modified /etc/grub.d/20_memtest86+ and commented out the line with an open '{' but not the one with the closing '}' causing a syntax error that is preventing later menu entries (like Windows) from working.

Please revert the changes made to /etc/grub.d/20_memtest86+, or make sure that the closing '}' is commented as well, and then run "sudo update-grub".

Revision history for this message
Jimmy Superlative (jimmysuperlative) said :
#12

Jordan, THANK YOU!

Haven't tried the fix yet but if it works then YOU ARE A CHAMPION!!!!!

Thanks again.

Revision history for this message
Jimmy Superlative (jimmysuperlative) said :
#13

YES! WE HAVE A WINNER!!!

Thankyou Jordan! I have all boot options back once more!

SOLVED!!!

Revision history for this message
Jimmy Superlative (jimmysuperlative) said :
#14

Thanks Jordan, that solved my question.

Revision history for this message
Jordan (jordanu) said :
#15

You're welcome.