chainloading ubuntu hangs after displaying my entries in menu.lst

Asked by dragonfly

I have been asking questions and reading up on grub and the distro's booting sections but after a few re-installs and trials later I still cannot fully multiboot from my multidisk setup (as I had done with ubuntu's grub form earlier distro versions). I can boot into Suse and Windows (with some entry adjustments) but not Ubuntu Gutsy and Hardy.

My setup has my first IDE with a separate boot partition due to my bios limitations, and a swap also primary partition. For the rest on logical partitions, open Suse 11.0 is on the 11th partition and it's /home is on12th, I have Ubuntu Gutsy on the 8th, and others are either Ext3 data or NTFS partitions.

 My last re-install was the Ubuntu Hardy on sdb2 and it's own swap sdb1 - I added grub to the Hardy's / partition as suggested and then in Suse's grub/menu.lst I chainloaded it but Suse does something that is incompatible with grub later down the chain: I try to write:
title: Ubuntu
        rootnoverify (hd2,1) as grub sees it
        chainloader +1

but then Yast keeps saving this entry as:

title
     rootnoverify (hd0,0) which is where suse's master grub is
     chainloader (hd2,1)

this change allows me to still boot into my windows partition with added makeactive and mapping but for Ubuntu it causes my computer to hang in a grub path (it turns to a plain grub menu with the word grub on last line) with no way of editiing it!

the only work around I managed was to reboot into Suse's grub menu and to try my older ubuntu entry which says file not found (see later explanation) and then I end up in a black in white menu of same and there I can edit my Hardy Ubuntu entry back to the more universal way of entering a chainloader command as before Yast changes it and then I get into the menu.lst belonging to Ubuntu finally and there is another hitch to do with device mapping I believe: Ubuntu sees its root on (hd1,1) but I msut change it to (hd2,1) again in order to finally boot into hardy and there it seem that I have no gui or xserver installed, but I am hoping that that was something related to my omiting extra multimedia packages to do a quicker test installation.

I believe that I can change my groot permanently in my boot/grub/menu.lst to the appropiate (hd2,1) and change that problem, but what of Yast rewriting the chainloader entry?

I found out that for Ubuntu it uses UUIDs for listing it's kernel and other things and that this gets tricky when you add a new drive, partition or change the boot order in bios. Open Suse is on newly created partitions of my first drive, I had accidently erased my boot drive before these new re-installs and the drive with Ubuntu hardy is newi its a SCSI but was installed before putting on these OS new versions. I am mentioning this in order to figure out if any of these things are causing my difficulties. I don't understand it: you are supposed to be able to chainload many disros easily on many drives according to some (see the 145 OS chainloaded).

I will take a break and figure out my next steps. Since I have 2 OS on 2 drives-I have no space for both on this new SCSI) they both don't want to coexist bootfully!! I also erased my boot files for my entry into my older Ubuntu version gusty ( I still had some stuff left there) and so far instructions to cp the bkup files back to the boot partition failed... (kernel loads on screen with initdr messages and repeats "doesn't support DPO and FUA" and then system just hangs...)

Any ideas would be appreciated...

Question information

Language:
English Edit question
Status:
Solved
For:
openSUSE Edit question
Assignee:
No assignee Edit question
Solved by:
dragonfly
Solved:
Last query:
Last reply:
Revision history for this message
dragonfly (streams0dragonflies) said :
#1

sorry, the line in Yast should have said:

title
     rootnoverify (hd0,0) which is where suse's master grub is
     chainloader (hd2,1) +1

but I figured out how to make the right changes permanent via Ubuntu live CD in gksudo nautilus, thus overrriding Yast. But now that there is hope, I want to try to recover my old Gutsy grub back and put that on the boot partition and try to chainload Suse instead (install Suse's grub to its /, and see if I can keep the boot files in / as well since it is before the 137 GiG bios limit) will I have a problem if I do kernel updates in Suse and its not the master grub anymore?

Also, even though Gparted labelled the Suse partition sda11, it is in the beginning sectors of the disk right??????

here is my fdisk -l:

ubuntu@ubuntu:~$ sudo 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: 0x0002145b

   Device Boot Start End Blocks Id System
/dev/sda1 * 1 24 192748+ 83 Linux
/dev/sda2 25 60558 486239355 f W95 Ext'd (LBA)
/dev/sda3 60559 60801 1951897+ 82 Linux swap / Solaris
/dev/sda5 7766 20825 104904450 83 Linux
/dev/sda6 25728 43109 139620883+ 7 HPFS/NTFS
/dev/sda7 43110 54601 92309458+ 7 HPFS/NTFS
/dev/sda8 54602 60558 47849571 83 Linux
/dev/sda9 4548 7765 25848553+ 7 HPFS/NTFS
/dev/sda10 20826 25727 39375283+ 7 HPFS/NTFS
/dev/sda11 25 2039 16185424+ 83 Linux ********************************************************* OpenSuse /
/dev/sda12 2040 4547 20145478+ 83 Linux /home

Partition table entries are not in disk order

Disk /dev/sdb: 36.4 GB, 36420075520 bytes
255 heads, 63 sectors/track, 4427 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xc52e3703

   Device Boot Start End Blocks Id System
/dev/sdb1 * 1 3046 24466963+ 7 HPFS/NTFS
/dev/sdb2 3047 4427 11092882+ 83 Linux

Disk /dev/sdc: 18.4 GB, 18400000000 bytes
255 heads, 63 sectors/track, 2237 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xf34e1a69

   Device Boot Start End Blocks Id System
/dev/sdc1 1995 2237 1951897+ 82 Linux swap / Solaris
/dev/sdc2 1 1994 16016773+ 83 Linux

Partition table entries are not in disk order
ubuntu@ubuntu:~$

hoping to hear something before I make the changes....

Revision history for this message
dragonfly (streams0dragonflies) said :
#2

Solved!
Solved my problem by having 2 separate boot partitions (sdc1 and sdc4) in the first sectors of the IDE drive, so each OS has it's own bootfiles pretty intact and Ubuntu's grub is the one I chose as ''master'' grub (boot-flagged) with all other OS chainloaded. My original boot had almost 200mb, so I could split in ½ and still have enough room for files and booting-up the kernel.
Had to re-install SUSE again though and install grub at (hd0,3) and take bootflag of it!
Note: Also wrote the right UUIDs in /etc/fstab, for Ubuntu and I can boot all OS now!