Grub Problem

Okay, this is the problem. I just installed 12.1 via SD card, and when I rebooted I get the following error from Grub.

Error: File not found
Grub rescue

The strange thing is that when I boot from the SD Card. It boots up like it is supposed to. What i am thinking is that some how it wrote the MBR to the SD card. Now, I am sort of new when it comes to working with opensuse. I am used to Ubuntu, but unforuantely 11.10 does not like my computer at all.

Any Help will be much appreciated.

Thanks,

Don’t panic
Boot to openSUSE if you can Tell us what other OS you have installed (windows?)

Open a terminal and post the following: (Use your mouse to copy and paste to and from the terminal)

cat /etc/fstab
su -
fdisk -l

cat /boot/grub/menu.lst

Here are the outputs they are in the same order you gave them to me.

Thanks for helping. hope this is a relatively easy fix.

/dev/disk/by-id/ata-ST9500325AS_5VE1ZD0T-part5 swap                 swap       defaults              0 0
/dev/disk/by-id/ata-ST9500325AS_5VE1ZD0T-part1 /                    ext4       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



linux-9s1u:/home/michael # fdisk -l

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
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00057328

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048   968916991   484457472   83  Linux
/dev/sda2       968919038   976771071     3926017    5  Extended
/dev/sda5       968919040   976771071     3926016   82  Linux swap / Solaris

Disk /dev/sdc: 2002 MB, 2002780160 bytes
64 heads, 32 sectors/track, 1910 cylinders, total 3911680 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x50387de3

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1   *           0     1382399      691200   83  Linux

Disk /dev/sdc1: 707 MB, 707788800 bytes
64 heads, 32 sectors/track, 675 cylinders, total 1382400 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x50387de3

     Device Boot      Start         End      Blocks   Id  System
/dev/sdc1p1   *           0     1382399      691200   83  Linux



linux-9s1u:/home/michael # cat /boot/grub/menu.lst
# Modified by YaST2. Last modification on Tue Jan  3 21:38:32 CST 2012
# THIS FILE WILL BE PARTIALLY OVERWRITTEN by perl-Bootloader
# For the new kernel it try to figure out old parameters. In case we are not able to recognize it (e.g. change of flavor or strange install order ) it it use as fallback installation parameters from /etc/sysconfig/bootloader

default 0
timeout 8
gfxmenu (hd1,0)/boot/message
##YaST - activate

###Don't change this comment - YaST2 identifier: Original name: linux###
title openSUSE 12.1
    root (hd1,0)
    kernel /boot/vmlinuz-3.1.0-1.2-desktop root=/dev/disk/by-id/ata-ST9500325AS_5VE1ZD0T-part1 resume=/dev/disk/by-id/ata-ST9500325AS_5VE1ZD0T-part5 splash=silent quiet showopts vga=0x317
    initrd /boot/initrd-3.1.0-1.2-desktop

###Don't change this comment - YaST2 identifier: Original name: Linux other###
title Linux other
    rootnoverify (hd0,0)
    chainloader +1

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- openSUSE 12.1
    root (hd1,0)
    kernel /boot/vmlinuz-3.1.0-1.2-desktop root=/dev/disk/by-id/ata-ST9500325AS_5VE1ZD0T-part1 showopts apm=off noresume edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 nomodeset x11failsafe vga=0x317
    initrd /boot/initrd-3.1.0-1.2-desktop

Still working in openSUSE

In a terminal, we need to edit /boot/grub/menu.lst
So enter this

in kde

kdesu kwrite /boot/grub/menu.lst

or in gnome

gnomesu gedit /boot/grub/menu.lst

Now you need to change, carefully

# Modified by YaST2. Last modification on Tue Jan  3 21:38:32 CST 2012
# THIS FILE WILL BE PARTIALLY OVERWRITTEN by perl-Bootloader
# For the new kernel it try to figure out old parameters. In case we are not able to recognize it (e.g. change of flavor or strange install order ) it it use as fallback installation parameters from /etc/sysconfig/bootloader

default 0
timeout 8
gfxmenu (hd0,0)/boot/message
##YaST - activate

###Don't change this comment - YaST2 identifier: Original name: linux###
title openSUSE 12.1
    root (hd0,0)
    kernel /boot/vmlinuz-3.1.0-1.2-desktop root=/dev/disk/by-id/ata-ST9500325AS_5VE1ZD0T-part1 resume=/dev/disk/by-id/ata-ST9500325AS_5VE1ZD0T-part5 splash=silent quiet showopts vga=0x317
    initrd /boot/initrd-3.1.0-1.2-desktop

###Don't change this comment - YaST2 identifier: Original name: Linux other###
title Linux other
    rootnoverify (hd0,0)
    chainloader +1

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- openSUSE 12.1
    root (hd0,0)
    kernel /boot/vmlinuz-3.1.0-1.2-desktop root=/dev/disk/by-id/ata-ST9500325AS_5VE1ZD0T-part1 showopts apm=off noresume edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 nomodeset x11failsafe vga=0x317
    initrd /boot/initrd-3.1.0-1.2-desktop

Then save the file

The entry for Linux other could be removed, it’s of no use
The installer was bit mixed up by the use of the SD card.

Reboot and you should be good

Just to add
In case it doesn’t boot. Is what is on the SD a live CD? Because we would use that.

Or before you you reboot from doing the above. You could just do this

su -
grub
root (hd0,0)
setup (hd0)

You might also want to check your HD and not SD is first in this order
Go here http://dl.dropbox.com/u/10573557/Bootloader%20HD%20Order/bootloader-main.png
then
http://dl.dropbox.com/u/10573557/Bootloader%20HD%20Order/bootloader-details2.png

Okay, I done that and now it wont even boot from the sdcard.

when i select openSUSE 12.1 i get

Error 17: cannot mount selected partition
Press any key to continue...

and before i get to the menu i get

(hd0,0)/boot/message: file not found

Is the SD card a Live CD?
Boot to the live system

okay, I think its fixed. it wouldn’t even boot back in to the liveCD, but i went in to Grub command and typed

root (hd1,0)

and then

setup (hd1)

trying to at least get it to boot back into my installation. When i rebooted it booted to the menu and to the OS shortly after. Then i tried it again without the SDcard present and got the same result. I have no idea how it happened, but at least it is working.

What happened is this

The installer saw your SD card as hd0 (it shouldn’t)
So it setup everything with your HD as it being hd1, (it’s not really)

You should be OK to leave it as is now

Thanks for your help, everything else seems to be working so far. The real test will be when i get the rest of my stuff on here which will be tomorrow. Been working on this all day haha.

Thanks again,

I use a USB to install to my eeepc

I probably made about a dozen installs there already and once it did do the same you had. And the installer was seeing my HD as hd1
But I didn’t run it
I rebooted and tried again
It’s not happened since.

A related issue affected my install on my Main Box
The installer had the HD order wrong and I had to toggle them in the Bootloader setup.

The edit I made for you earlier would work, if only I had remembered to add the edit for the device map!