Triple boot with Windows and Ubuntu

I have very limited technical experience with Linux and I would like to install Suse 11 alongside windows and ubuntu. This could either be a triple boot on my main 250gb hd or alternatively leaving the 250gb as it is (windows/ubuntu) and installing suse on an external 160 gb hd.

This is way beyond my experience which so far has been installing ubuntu and others alongside Windows. Is this a possibility or am I asking too much of both myself and my setup?

While I cannot comment on whether this is too much for yourself ;), it is certainly doable technically. Many of us have multi-boot setups.

There are a nbr of different ways to do this. It often just comes down to personal preference, so you will get quite a variety of suggestions. But also, there can be gotchas that are specific to a machine (like with external drives), which is why IMHO it’s best to go with what you know already works if that’s an option. If you have Windows/Ubuntu dual-booting already, what is probably easiest if to free the space and create the partition(s) for openSUSE with Ubuntu, then install openSUSE to that partition(s).

It is important to decide in advance how you want the boot managed. Assuming you are using Ubuntu’s grub to control the boot, your best options are either to (1) edit Ubuntu’s boot control file to add a stanza to directly boot openSUSE, in which case you don’t install grub at all with openSUSE or (2) in the openSUSE installation you install grub to the openSUSE partition and then edit Ubuntu’s grub file to “chainload” to openSUSE (same method as booting Windows).

IIRC the Ubuntu grub update script will automatically find openSUSE and add the stanza for you (#1 above). The downside of that is when the openSUSE kernel gets updated, you have to remember to re-run the Ubuntu script (or edit the file by hand). My preference has always been (#2) the chainloading option; set that up once in Ubuntu and you’re done regardless of changes on the openSUSE side.

Don’t hesitate to ask if this isn’t clear.

I want to do the same thing… triple boot the openSUSE next to windows XP and Ubuntu.
The grub of Ubuntu is handling right now the booting so I will do one of the two solutions above…
Can you give me more details on how to manage one of the two…
I dont understand in the first solution wich script we have to run and in the second solution how to chainload the two grubs.
Thanks in advance!!! :wink:

IIRC Ubuntu’s script “update-grub” will look for any other /boot directories on other partitions and if there is a grub menu.lst, merge those entries. Some info here Log into Ubuntu, make a backup copy of menu.lst, then run update-grub to check it out. The issue with this is that in the menu.lst stanza for openSUSE, the kernel and initrd lines will use the fully-qualified file names - so when the openSUSE kernel/menu.lst is updated, you need to re-run update-grub in Ubuntu.

Alternatively, you can change the kernel line to “kernel /boot/vmlinuz root= …” that is, just using “vmlinuz” instead of the entire filename; this works because openSUSE installs a symlink by that name pointing to the kernel file name. Does the same for the initrd, so the menu.lst line can just be “initrd /boot/initrd”. Using the symlinks avoids the above problem because even when the kernel and initrd file names change, the symlinks do not.

Both of the above use what is called “direct” booting, where in this case the Ubuntu grub is calling the kernel from openSUSE. The other option I ref’d previously was chainloading; in this method, grub is installed in openSUSE’s root partition and the Ubuntu grub hands off to the openSUSE grub (precisely the same as the Ubuntu grub hands off to the Windows boot loader). You can use YaST to install grub in the openSUSE root partition. Then in Ubuntu you edit menu.lst to add a stanza like this:

title openSUSE
root (hdx,y)
chainloader +1

where x is the grub disk nbr, y the partition, e.g., “root (hd1,0)” which would mean openSUSE is on the first partition of the second disk as defined in Ubuntu’s /boot/grub/

Thank you very much for the answers!!!
I will try these solutions and i will learn how it works the grub with these different solutions…
Thanks again! lol!