grub error 21

i recently followed a tutorial to install suse from a live cd onto a usb drive, it worked great except that it created a grub and now i can no longer boot my wondows xp OS from my hard drive with or with out the usb.

im at a loss of what to do, this is my work laptop, i do not have an XP install disc.

ive read about using lilo, ms-sys ect ect this has not worked

when i bring up fdisk -l i see the usb partitions and the ntfs partitions except they are llisted as /dev/sdb1/ * & /dev.sdb2/

my windows OS did have to partitions, a c and d drive.

what can i do to resolve this situation?

please help.

Do you get the same grub error with or without the usb

with the USB i can load suse (but no windows option in the suse grub) with out the USB i get the error 21, with a live cd i load into the live cd menu

Please post the result of these:

From a su terminal - with the usb in

fdisk -l
cat /boot/grub/menu.lst

fs tab
/dev/disk/by-id/usb-USB_2.0_USB_Flash_Drive_269663057a6556-0:0-part1 swap swap defaults 0 0
/dev/disk/by-id/usb-USB_2.0_USB_Flash_Drive_269663057a6556-0:0-part2 / ext3 acl,user_xattr 1 1
proc /proc proc defaults 0 0
sysfs /sys sysfs noauto 0 0
debugfs /sys/kernel/debug debugfs noauto 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0

device map
hd1) /dev/disk/by-id/usb-USB_2.0_USB_Flash_Drive_269663057a6556-0:0
(hd0) /dev/disk/by-id/ata-ST960813AS_5LY5SX6Y

fdisk -l
Disk /dev/sda: 4043 MB, 4043309056 bytes
255 heads, 63 sectors/track, 491 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x04dd5721

Device Boot Start End Blocks Id System
/dev/sda1 1 64 514048+ 82 Linux swap / Solaris
/dev/sda2 65 491 3429877+ 83 Linux

Disk /dev/sdb: 60.0 GB, 60011642880 bytes
240 heads, 63 sectors/track, 7752 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes
Disk identifier: 0xcb13b13e

Device Boot Start End Blocks Id System
/dev/sdb1 * 1 4979 37634048 7 HPFS/NTFS
/dev/sdb2 4979 7752 20968448 7 HPFS/NTFS

menu.lst

Modified by YaST2. Last modification on Fri Nov 6 17:42:42 EST 2009

default 0
timeout 8
gfxmenu (hd1,1)/boot/message

###Don’t change this comment - YaST2 identifier: Original name: linux###
title openSUSE 11.1
root (hd1,1)
kernel /boot/vmlinuz-2.6.27.7-9-default root=/dev/disk/by-id/usb-USB_2.0_USB_Flash_Drive_269663057a6556-0:0-part2 resume=/dev/disk/by-id/usb-USB_2.0_USB_F$
initrd /boot/initrd-2.6.27.7-9-default

###Don’t change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe – openSUSE 11.1
root (hd1,1)
kernel /boot/vmlinuz-2.6.27.7-9-default root=/dev/disk/by-id/usb-USB_2.0_USB_Flash_Drive_269663057a6556-0:0-part2 showopts ide=nodma apm=off noresume nosm$
initrd /boot/initrd-2.6.27.7-9-default

add this to the end of menu.lst
we may have to edit it further so don’t panic

###Don’t change this comment - YaST2 identifier: Original name: windows###
title Windows
map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd1,0)
chainloader +1

ok ive added it, im assuming i should reboot and see if selecting this option from the grub will bring up windows?

Correct. Make a note if it errors again at trying the new win entry

map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd1,0)
chainloader +1

error 13: Invalid or unsupported executable format

press any key to continue…

OK. I’m assuming
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 4979 37634048 7 HPFS/NTFS This is XP
/dev/sdb2 4979 7752 20968448 7 HPFS/NTFS This is some data section

Correct?

N. B: Wouldn’t it be easier to fix the MBR and then just use the usb when you want SUSE?

I was under the impression that when i installed it on the USB the laptop would boot normally to windows unless the usb was plugged in then it would boot normally to suse.

ultimately i would like it set up this way, but how can i fix the MBR? i do not have and xp install disk to use to repair it.

yes this is correct.

But do you have a CD/DVD drive
You could try SuperGrubDisk: http://www.supergrubdisk.org/

I wonder if you add makeactive it will help?

thank you for the link im working on d/l and burn process

this did not work, same error.

i have teh supergrub iso, im trying to get it on a disc

ok when i boot into the supergrub cd it does not provide a windows option.

“first kernal and initrd” which does nothing.

this was attempted with out the USB plugged in since i know i can boot that with no issues

I get to a menu where two win option are 2nd and 3rd up from the bottom
eg: win => MBR & !WIN!

You could boot to suse from usb and go to Yast bootloader and try and add a new entry for windows there.