grub2 on sata HD detects xp on ide hd but will not start

Asked by Luis

I have 2 hard drives:
1) SATA HD with Ubuntu 9.10 (installed when drive 2 was not installed (plugged)).
2) IDE HD with Windows XP (installed when drive 1 was not installed (plugged in))

Each OS works fine when the other drive is not plugged in, and when both drives are connected to the motherboard, the grub menu displays the XP Option, but does not start it.
Ubuntu starts without problem.

To start XP, I have had to unplug the SATA HD with Ubuntu 9.10

Please see the attached file for detail info.

Any ideas on how to solve the problem?

I am attaching further info here:

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

 => Grub1.97 is installed in the MBR of /dev/sda and looks at sector 129760372
    on boot drive #-111 for core.img, but core.img can not be found at this
    location.
 => Windows is installed in the MBR of /dev/sdb

sda1: _________________________________________________________________________

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

sda2: _________________________________________________________________________

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

sda5: _________________________________________________________________________

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

sdb1: _________________________________________________________________________

    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

sdb2: _________________________________________________________________________

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

sdb5: _________________________________________________________________________

    File system: vfat
    Boot sector type: Fat32
    Boot sector info: According to the info in the boot sector, sdb5 starts
                       at sector 0. But according to the info from fdisk,
                       sdb5 starts at sector 514802988.
    Operating System:
    Boot files/dirs:

sdb6: _________________________________________________________________________

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

sdb7: _________________________________________________________________________

    File system: vfat
    Boot sector type: Fat32
    Boot sector info: According to the info in the boot sector, sdb7 starts
                       at sector 0. But according to the info from fdisk,
                       sdb7 starts at sector 281715966.
    Operating System:
    Boot files/dirs:

sdb8: _________________________________________________________________________

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

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

Drive: sda ___________________ _____________________________________________________

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0xe390e390

Partition Boot Start End Size Id System

/dev/sda1 * 63 1,933,856,504 1,933,856,442 83 Linux
/dev/sda2 1,933,856,505 1,953,520,064 19,663,560 5 Extended
/dev/sda5 1,933,856,568 1,953,520,064 19,663,497 82 Linux swap / Solaris

Drive: sdb ___________________ _____________________________________________________

Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0xddb7ddb7

Partition Boot Start End Size Id System

/dev/sdb1 * 63 281,715,839 281,715,777 7 HPFS/NTFS
/dev/sdb2 281,715,840 976,768,064 695,052,225 5 Extended
/dev/sdb5 514,802,988 957,955,949 443,152,962 83 Linux
/dev/sdb6 957,956,013 976,768,064 18,812,052 82 Linux swap / Solaris
/dev/sdb7 281,715,966 505,244,249 223,528,284 83 Linux
/dev/sdb8 505,244,313 514,802,924 9,558,612 82 Linux swap / Solaris

blkid -c /dev/null: ____________________________________________________________

/dev/sda1: UUID="4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe" TYPE="ext4"
/dev/sda5: UUID="6896cbd4-f2ad-41f4-befc-bc7ccc077521" TYPE="swap"
/dev/sdb1: UUID="52746AA0746A8717" TYPE="ntfs"
/dev/sdb5: LABEL="New Volume" UUID="04A6-26FB" TYPE="vfat"
/dev/sdb6: UUID="a1200d83-d6e9-4f6f-ad40-1f241420c13c" TYPE="swap"
/dev/sdb7: LABEL="New Volume" UUID="073A-D17F" TYPE="vfat"
/dev/sdb8: UUID="470d033a-22c1-481e-bc83-ce3c61232cfd" TYPE="swap"

=============================== "mount" output: ===============================

/dev/sda1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw)
none on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
none on /dev/shm type tmpfs (rw,nosuid,nodev)
none on /var/run type tmpfs (rw,nosuid,mode=0755)
none on /var/lock type tmpfs (rw,noexec,nosuid,nodev)
none on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/chopag/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=chopag)

=========================== sda1/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 0

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

## 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=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro

## default grub root device
## e.g. groot=(hd0,0)
# groot=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe

## 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.10, kernel 2.6.31-17-generic-pae
uuid 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
kernel /boot/vmlinuz-2.6.31-17-generic-pae root=UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro quiet splash
initrd /boot/initrd.img-2.6.31-17-generic-pae

title Ubuntu 9.10, kernel 2.6.31-17-generic-pae (recovery mode)
uuid 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
kernel /boot/vmlinuz-2.6.31-17-generic-pae root=UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro single
initrd /boot/initrd.img-2.6.31-17-generic-pae

title Ubuntu 9.10, kernel 2.6.31-14-generic-pae
uuid 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
kernel /boot/vmlinuz-2.6.31-14-generic-pae root=UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro quiet splash
initrd /boot/initrd.img-2.6.31-14-generic-pae

title Ubuntu 9.10, kernel 2.6.31-14-generic-pae (recovery mode)
uuid 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
kernel /boot/vmlinuz-2.6.31-14-generic-pae root=UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro single
initrd /boot/initrd.img-2.6.31-14-generic-pae

title Chainload into GRUB 2
root 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
kernel /boot/grub/core.img

title Ubuntu 9.10, memtest86+
uuid 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
kernel /boot/memtest86+.bin

### END DEBIAN AUTOMAGIC KERNELS LIST

=========================== sda1/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 /boot/grub/grubenv ]; then
  have_grubenv=true
  load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
  saved_entry=${prev_saved_entry}
  save_env saved_entry
  prev_saved_entry=
  save_env prev_saved_entry
fi
insmod ext2
set root=(hd0,1)
search --no-floppy --fs-uuid --set 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=1280x1024
  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
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/white
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry "Ubuntu, Linux 2.6.31-17-generic-pae" {
        recordfail=1
        if [ -n ${have_grubenv} ]; then save_env recordfail; fi
 set quiet=1
 insmod ext2
 set root=(hd0,1)
 search --no-floppy --fs-uuid --set 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
 linux /boot/vmlinuz-2.6.31-17-generic-pae root=UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro quiet splash
 initrd /boot/initrd.img-2.6.31-17-generic-pae
}
menuentry "Ubuntu, Linux 2.6.31-17-generic-pae (recovery mode)" {
        recordfail=1
        if [ -n ${have_grubenv} ]; then save_env recordfail; fi
 insmod ext2
 set root=(hd0,1)
 search --no-floppy --fs-uuid --set 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
 linux /boot/vmlinuz-2.6.31-17-generic-pae root=UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro single
 initrd /boot/initrd.img-2.6.31-17-generic-pae
}
menuentry "Ubuntu, Linux 2.6.31-14-generic-pae" {
        recordfail=1
        if [ -n ${have_grubenv} ]; then save_env recordfail; fi
 set quiet=1
 insmod ext2
 set root=(hd0,1)
 search --no-floppy --fs-uuid --set 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
 linux /boot/vmlinuz-2.6.31-14-generic-pae root=UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro quiet splash
 initrd /boot/initrd.img-2.6.31-14-generic-pae
}
menuentry "Ubuntu, Linux 2.6.31-14-generic-pae (recovery mode)" {
        recordfail=1
        if [ -n ${have_grubenv} ]; then save_env recordfail; fi
 insmod ext2
 set root=(hd0,1)
 search --no-floppy --fs-uuid --set 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
 linux /boot/vmlinuz-2.6.31-14-generic-pae root=UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro single
 initrd /boot/initrd.img-2.6.31-14-generic-pae
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
 linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
 linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Microsoft Windows XP Home Edition (on /dev/sdb1)" {
 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 ###

=============================== sda1/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 defaults 0 0
# / was on /dev/sda1 during installation
UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe / ext4 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=6896cbd4-f2ad-41f4-befc-bc7ccc077521 none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0

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

    .0GB: boot/grub/grub.cfg
    .0GB: boot/grub/menu.lst
    .0GB: boot/initrd.img-2.6.31-14-generic
    .0GB: boot/initrd.img-2.6.31-14-generic-pae
    .0GB: boot/initrd.img-2.6.31-17-generic-pae
    .0GB: boot/vmlinuz-2.6.31-14-generic-pae
    .0GB: boot/vmlinuz-2.6.31-17-generic-pae
    .0GB: initrd.img
    .0GB: initrd.img.old
    .0GB: vmlinuz
    .0GB: vmlinuz.old

================================ sdb1/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 Home Edition" /noexecute=optin /fastdetect

Any suggestions on how to solve this problem ?

Regards,

Luis Fierro

Question information

Language:
English Edit question
Status:
Answered
For:
Ubuntu grub2 Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
delance (olivier-delance) said :
#1

When you installed windows, it was on first drive.
But with both hard drive plug, Windows is now on second drive.
You must invert in grub first and second disk.

On my computer, it looks like:

title Ubuntu 9.10, kernel 2.6.31-16-generic
uuid ef3449fc-7813-48fe-a458-1c611b17fce4
kernel /boot/vmlinuz-2.6.31-16-generic root=UUID=ef3449fc-7813-48fe-a458-1c611b17fce4 ro xforcevesa quiet splash
initrd /boot/initrd.img-2.6.31-16-generic
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 Restauration (loader)
map (hd0) (hd1)
map (hd1) (hd0)
root (hd1,0)
savedefault
makeactive
chainloader +1

# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/sda2
title Windows Vista (loader)
map (hd0) (hd1)
map (hd1) (hd0)
root (hd1,1)
savedefault
makeactive
chainloader +1

NB: it's more easy to
1-install windows first
2-keeping windows and plug new hard drive as first drive
3-installing Ubuntu
In this case during installation of Ubuntu, the windows partition is managed and added to Grub.

Revision history for this message
Luis (luisgfierro-gmail) said :
#2

Without reinstalling Ubuntu, can you give me newbee instructions on how to fix it....(I assume some command line instructions and mapping ?) Thanks !

Revision history for this message
delance (olivier-delance) said :
#3

I am not sure it will works. It will not break Ubuntu boot, which is before.
1) Go to /boot/grub.
2) Do a copy of current "menu.lst", to be able to go back!
3) Edit file menu.lst

After lines:

title Ubuntu 9.10, kernel 2.6.31-14-generic-pae (recovery mode)
uuid 4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe
kernel /boot/vmlinuz-2.6.31-14-generic-pae root=UUID=4ed5eb9e-4a26-4a25-95b8-9f3d5eff86fe ro single
initrd /boot/initrd.img-2.6.31-14-generic-pae

add:

title Other operating systems: # this line should be displayed at end of boot menu
root
title Essai boot XP # this line should be displayed at end of boot menu
map (hd0) (hd1) # swap first and second disk
map (hd1) (hd0) # swap first and second disk
root (hd1,0) # /dev/sda1 in GRUB terminology
savedefault
makeactive
chainloader +1

If it doesn't work, I will try to reproduce problem on a virtual machine.

Revision history for this message
lfierro (luisgfierro) said :
#4

It did not work, but did not break the Ubuntu install either :)
Any other suggestions....?

Can you help with this problem?

Provide an answer of your own, or ask Luis for more information if necessary.

To post a message you must log in.