after installing Opensuse cant boot to Ubuntu

hi, i has a dualboot pc with XP and ubuntu. yesterday i installed Opensuse, everything worked fine after i discovered that i cant boot anymore to ubuntu. it show me the error boot/vmlinuz-2.6.28-15 missing . all the systems are installed in the same HD. any help please.

Open a terminal in SUSE, and run


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

And paste the output here. That should get us started. Presumably openSUSE is running the boot (as in, you get a ‘SUSE’ branded bootloader when you turn the PC on?) And you’re given all three options (Windows, Ubuntu, SUSE) it’s just that Ubuntu doesn’t work?

i’m running ubunutu in a live cd now. im getting opensuse green boot page at first and only the ubuntu doesnt work.

sda 456 Gb ntfs sata HD i use for data
sdb 40 Gb
sdb1 ntfs XP
sdb3 ext3 Opensuse
sdb2 10.07 Gb
sbd5 ext3 9.13 Gb Ubuntu
sdb6 linux-swap 956 mb

any help please :S

enea@linux-o359:~> su -
Password:              
linux-o359:~ # fdisk -l

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xb5ded898                     

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1       60801   488384001   42  SFS   

Disk /dev/sdb: 41.1 GB, 41110142976 bytes
255 heads, 63 sectors/track, 4998 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x83418341                     

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        3043    24442866    7  HPFS/NTFS
/dev/sdb2            3685        4998    10554705    5  Extended 
/dev/sdb3   *        3044        3684     5148832+  83  Linux    
/dev/sdb5            3685        4876     9574708+  83  Linux    
/dev/sdb6            4877        4998      979933+  82  Linux swap / Solaris

Partition table entries are not in disk order
linux-o359:~ # mount                         
/dev/sdb3 on / type ext3 (rw,acl,user_xattr) 
/proc on /proc type proc (rw)                
sysfs on /sys type sysfs (rw)                
debugfs on /sys/kernel/debug type debugfs (rw)
udev on /dev type tmpfs (rw)                  
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/sdb1 on /windows/C type fuseblk (rw,noexec,nosuid,nodev,allow_other,default_permissions,blksize=4096)                                                      
fusectl on /sys/fs/fuse/connections type fusectl (rw)                           
securityfs on /sys/kernel/security type securityfs (rw)                         
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)                          
gvfs-fuse-daemon on /home/enea/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=enea)
linux-o359:~ # cat /boot/grub/menu.lst
# Modified by YaST2. Last modification on Sun Sep  6 14:14:04 UTC 2009
default 0
timeout 8
##YaST - generic_mbr
gfxmenu (hd0,2)/boot/message
##YaST - activate

###Don't change this comment - YaST2 identifier: Original name: linux###
title openSUSE 11.1 - 2.6.27.7-9
    root (hd0,2)
    kernel /boot/vmlinuz-2.6.27.7-9-pae root=/dev/disk/by-id/ata-Maxtor_6E040L0_E918AXNE-part3 resume=/dev/sdb6 splash=silent showopts vga=0x31a
    initrd /boot/initrd-2.6.27.7-9-pae

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- openSUSE 11.1 - 2.6.27.7-9
    root (hd0,2)
    kernel /boot/vmlinuz-2.6.27.7-9-pae root=/dev/disk/by-id/ata-Maxtor_6E040L0_E918AXNE-part3 showopts ide=nodma apm=off noresume nosmp maxcpus=0 edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 x11failsafe vga=0x31a
    initrd /boot/initrd-2.6.27.7-9-pae

###Don't change this comment - YaST2 identifier: Original name:  Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)###
title Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)
    root (hd0,4)
    configfile /boot/grub/menu.lst

###Don't change this comment - YaST2 identifier: Original name: windows###
title Windows
    rootnoverify (hd0,0)
    chainloader +1
linux-o359:~ #

su terminal do as asked:

cat /boot/grub/menu.lst

It this part that needs changing in the Ubuntu boot part of the menu
configfile /boot/grub/menu.lst

Help here:
HowTo Multiboot Ubuntu from openSUSE using the GRUB bootloader

linux-o359:~ # cat /boot/grub/menu.lst
# Modified by YaST2. Last modification on Sun Sep  6 14:14:04 UTC 2009
default 0
timeout 8
##YaST - generic_mbr
gfxmenu (hd0,2)/boot/message
##YaST - activate

###Don't change this comment - YaST2 identifier: Original name: linux###
title openSUSE 11.1 - 2.6.27.7-9
    root (hd0,2)
    kernel /boot/vmlinuz-2.6.27.7-9-pae root=/dev/disk/by-id/ata-Maxtor_6E040L0_E918AXNE-part3 resume=/dev/sdb6 splash=silent showopts vga=0x31a
    initrd /boot/initrd-2.6.27.7-9-pae

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- openSUSE 11.1 - 2.6.27.7-9
    root (hd0,2)
    kernel /boot/vmlinuz-2.6.27.7-9-pae root=/dev/disk/by-id/ata-Maxtor_6E040L0_E918AXNE-part3 showopts ide=nodma apm=off noresume nosmp maxcpus=0 edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 x11failsafe vga=0x31a
    initrd /boot/initrd-2.6.27.7-9-pae

###Don't change this comment - YaST2 identifier: Original name:  Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)###
title Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)
    root (hd0,4)
    configfile /boot/grub/menu.lst

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

Good catch caf - that had me confused. :slight_smile:

So I suppose something like…


#Don't change this comment - YaST2 identifier: Original name: none#
title Ubuntu 9.04 
root (hd0,4)
kernel /vmlinuz root=/dev/sdb5 ro quiet splash
initrd /initrd.img

Would work. That only gives you access to one kernel in Ubuntu, so you could manually reinstall grub on Ubuntu’s partition, and chainload that grub. That should be relatively easy - but probably just get it booting this way first.

Change this:
###Don’t change this comment - YaST2 identifier: Original name: Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)###
title Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)
root (hd0,4)
configfile /boot/grub/menu.lst

to this

###Don’t change this comment - YaST2 identifier: Original name: Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)###
title Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)
root (hd0,4)
kernel /vmlinuz root=/dev/sdb5 ro quiet splash
initrd /initrd.img

You made it there before me:)

thank you guys for the help. linux now load but not like normal, show me linux TTYN i dont know what to do :S

You mean you are at non-graphical login.

Did you login with username and pass then do: startx

yes i did, but it show me smth like kernel cant find a background contact to wiki.x.org

I’m not sure I understand that.
Did you Try supergrubdisk.

Or try any live cd, mount the Ub* root and find the menu file and post it here.

# 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		10

## 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=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro

## default grub root device
## e.g. groot=(hd0,0)
# groot=7906db5b-ecc9-4029-9216-2e7efa2fd650

## 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-15-generic
uuid		7906db5b-ecc9-4029-9216-2e7efa2fd650
kernel		/boot/vmlinuz-2.6.28-15-generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro quiet splash 
initrd		/boot/initrd.img-2.6.28-15-generic
quiet

title		Ubuntu 9.04, kernel 2.6.28-15-generic (recovery mode)
uuid		7906db5b-ecc9-4029-9216-2e7efa2fd650
kernel		/boot/vmlinuz-2.6.28-15-generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro  single
initrd		/boot/initrd.img-2.6.28-15-generic

title		Ubuntu 9.04, kernel 2.6.28-14-generic
uuid		7906db5b-ecc9-4029-9216-2e7efa2fd650
kernel		/boot/vmlinuz-2.6.28-14-generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro quiet splash 
initrd		/boot/initrd.img-2.6.28-14-generic
quiet

title		Ubuntu 9.04, kernel 2.6.28-14-generic (recovery mode)
uuid		7906db5b-ecc9-4029-9216-2e7efa2fd650
kernel		/boot/vmlinuz-2.6.28-14-generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro  single
initrd		/boot/initrd.img-2.6.28-14-generic

title		Ubuntu 9.04, kernel 2.6.28-13-generic
uuid		7906db5b-ecc9-4029-9216-2e7efa2fd650
kernel		/boot/vmlinuz-2.6.28-13-generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro quiet splash 
initrd		/boot/initrd.img-2.6.28-13-generic
quiet

title		Ubuntu 9.04, kernel 2.6.28-13-generic (recovery mode)
uuid		7906db5b-ecc9-4029-9216-2e7efa2fd650
kernel		/boot/vmlinuz-2.6.28-13-generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro  single
initrd		/boot/initrd.img-2.6.28-13-generic

title		Ubuntu 9.04, kernel 2.6.28-11-generic
uuid		7906db5b-ecc9-4029-9216-2e7efa2fd650
kernel		/boot/vmlinuz-2.6.28-11-generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro quiet splash 
initrd		/boot/initrd.img-2.6.28-11-generic
quiet

title		Ubuntu 9.04, kernel 2.6.28-11-generic (recovery mode)
uuid		7906db5b-ecc9-4029-9216-2e7efa2fd650
kernel		/boot/vmlinuz-2.6.28-11-generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro  single
initrd		/boot/initrd.img-2.6.28-11-generic

title		Ubuntu 9.04, memtest86+
uuid		7906db5b-ecc9-4029-9216-2e7efa2fd650
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 Home Edition
rootnoverify	(hd0,0)
savedefault
makeactive
chainloader	+1

This is addressed to caf; please do not try this until someone who knows a little more about this has looked over it.

Do you think maybe installing grub on the Ubuntu partition and chainloading it would help?

With only one drive, am I right in saying it’s just a matter of booting SUSE, and running


grub
root (hd0,4)
setup (hd0,4)

then adding a chainloader stanza to SUSE? Would that install Ubuntu’s grub (or at least a grub using Ubuntu’s menus, which will then be overwritten with its own when Ubuntu updates itself), or would you have to chroot into Ubuntu to do that?

Try something like this, if it works and you get a kernel update it will need editing:

###Don’t change this comment - YaST2 identifier: Original name: Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)###
title Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)
root (hd0,4)
kernel /boot/vmlinuz-2.6.28-15-generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro quiet splash
initrd /boot/initrd.img-2.6.28-15-generic

Another option which may work.
You know you can hand edit this at the suse menu when you boot, just to try it.

###Don’t change this comment - YaST2 identifier: Original name: Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)###
title Ubuntu 9.04, kernel 2.6.28-15-generic (/dev/sdb5)
root (hd0,4)
kernel /vmlinuz root=/dev/sdb5 generic root=UUID=7906db5b-ecc9-4029-9216-2e7efa2fd650 ro quiet splash
initrd /initrd.img

If you can get it to work through caf’s suggestion, then installing the correct grub on Ubuntu’s partition should be straightforward I believe - then you won’t have to worry about altering the menu with each kernel update.

Using any live CD and login as root
When you do ‘find’ /boot/grub/menu.lst - will it find both SUSE and UB*, I’m not sure. This would be the method

You enter this ---------------- grub
Computer returns like this ---- grub>
You enter this ---------------- find /boot/grub/menu.lst
Computer returns like this ---- (hd0,4)This is the Ubuntu grub location

Here, (hd0,4) is Grub’s pointer to the Ub* installation.

You enter this ---------------- root (hd0,4)
Computer returns like this ---- Filesystem type is ext2fs, partition type 0x83
You enter this ---------------- setup (hd0)
You see several lines like this — Checking if /boot/grub/stage1 exists … yes Computer finally returns this-- Succeeded…Done
You enter this ---------------- quit
You enter this ---------------- reboot <code>

Then the configfile method would work because suse would be ok with that. But you will have to enter it all manually to Ub* menu.lst