I am trying to add additional distributions to the bootloader application in YaST2. I am currently running opensuse 11.3. I got a new usb drive which I loaded both Debian and Fedora on it. When I attempt to add the distributions in menu.lst they are not saved or loaded.
The partition set up is below
/dev/sda
/dev/sda0 bootloader
/dev/sda1 opensuse root
/dev/sda5 opensuse home
/dev/sdb0 debian root
/dev/sdb1 Fedora root
/dev/sdb5 debian home
/dev/sdb6 Fedora home
In the Boot Loader Settings I selected Add and then Image Section to add the distributions. I put in the kernel image and initial ram disk and enter /dev/sdb0 as the root device for Debian and /dev/sdb1 for Fedora. The message box states that the image file doesn’t exist now Do you really want to use it and respond yes. It puts it on the Boot Loader Settings page but when you try to load it using the other button it disappears.
How can I update menu.lst to list and access these other distribution
I have not recently worked with Fedora or ever with debian. When you installed these Linux distros, did they also load a copy of their own grub menu? If you mount the root for each distribution, look in /boot/grub/menu.lst and if it is there, you could copy the entry that loads each and manually add it to your menu.lst file for openSUSE. To edit this file in openSUSE using KDE enter Alt-F2 enter the command:
kdesu kwrite /boot/grub/menu.lst
You are looking for an entry that looks something like this:
In your /boot/grub/menu.lst, you can add entries to chainload other Grubs (Legacy or Grub2) and/or entries to boot other distros kernels directly. The easiest would be to copy/paste those entries from other /boot/grub/menu.lst (Debian) or /boot/grub/grub.conf (Fedora). For systems using Grub2, the syntax is different. Here’s a script to convert Grub2 boot entries into legacy Grub syntax : Extracting Ubuntu (Grub2) boot entries..
Be aware that Entries booting other distros kernels might be removed after a kernel update, whether you add them by editing /boot/grub/menu.lst manually or using YaST. We suspected a bug in zypper: Grub looses menu entry after kernel update. This doesn’t apply to chainloading entries.
Here’s an example of some Grub entries, chainloading an booting directly Debian and Fedora. You can use device names (/dev/sda, /dev/sdb, etc) instead of UUID, but UUID are better because they don’t change (unlike device names).
###Don't change this comment - YaST2 identifier: Original name: FedoraGrub###
title Fedora Grub
rootnoverify (hd0,14)
chainloader +1
###Don't change this comment - YaST2 identifier: Original name: DebianGrub###
title Debian Grub
root (hd0,18)
chainloader +1
###Don't change this comment - YaST2 identifier: Original name: Fedora###
title Fedora 14 (Laughlin) - kernel 2.6.35.6-48
root (hd0,14)
kernel /boot/vmlinuz-2.6.35.6-48.fc14.x86_64 ro root=UUID=cd71a081-c3e3-466a-8385-e197a0bf78a4 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us rhgb
initrd /boot/initramfs-2.6.35.6-48.fc14.x86_64.img
###Don't change this comment - YaST2 identifier: Original name: Debian###
title Debian GNU/Linux, kernel 2.6.32-3-amd64
root (hd0,18)
kernel /boot/vmlinuz-2.6.32-3-amd64 root=UUID=30eac80e-8574-46fb-a4ee-ec2a2ee453f9 ro vga=794
initrd /boot/initrd.img-2.6.32-3-amd64
Pretty much every modern distro out there uses GRUB2. The only ones are OpenSUSE/SLED/SLES which use a modified GRUB1 and slackware which being an old-school distro retains lilo.
Not at all! The latest Fedora still uses Legacy Grub. Mandriva uses Legacy Grub. ArchLinux and Gentoo use Legacy Grub. Debian can use both.
Only Ubuntu and its derivatives use Grub2. Other distros are pretty much irrelevant IMHO.