D&C GLug - Home Page

[ Date Index ] [ Thread Index ] [ <= Previous by date / thread ] [ Next by date / thread => ]

Re: [LUG] Dual booting Debian and Ubuntu

 

On Wed, 17 Mar 2010 08:52:27 +0000
Philip Whateley wrote:

> Hi
> 
> Some time ago I posted on the list asking about adding debian as a
> dual boot onto an existing Ubuntu laptop.
> 
> This was fairly successful except that I now have a problem with Grub.
> 
> Ubuntu was already installed on (hd0,0). Debian is now installed on
> (hd0,1) with separate swap and home partitions.
> 
> The problem is that debian has installed its own grub onto hd0,1. I
> had to edit the menu.lst file on the debian partition when I upgraded
> from Ubuntu 9.04 to 9.10 (fortunately I made a copy of the menu.lst
> on hd0,0 before I restarted after the upgrade) otherwise grub on
> debian couldn't see a valid ubuntu kernel.
> 
> This means that whenever I upgrade, or install a new kernel in
> Ubuntu, I will have to re-edit the menu.lst file on the debian
> partition.
> 
> Also, because the system initially boots from debian and then passes
> to Ubuntu, I am getting lots of errors and warnings, as debian has the
> ubuntu partition and swap partition mounted and ubuntu can't start
> properly until the mounts are released. I now have a /var/log/syslog
> approaching 3Gb!
> 
> I would like to set up the system so it boots first from the Ubuntu
> partition - is this as simple as executing 
> sudo grub-install '(hd0,0)'
> and if so, do I execute this from ubuntu, or does the ubuntu partition
> need to be unmounted?
> 
> Many thanks
> 
> Phil

I had a multi-boot setup with many different Linuxes at one point.  It
made things interesting, but was OK in the end.

I adopted 2 approaches at different times.

One was to have a small partition (say 100MB) and have that as
the /boot partition on each distro.  This works well if you are
manually crafting your own boot setup - all the kernels and initrds in
one partition, maybe divided into directories/folders, etc.  Can get a
bit unwieldy though if any of your distros try to "work the magic" by
itself.

Another method, which is kind of a cop-out, is to have grub/lilo
installed to the distro's main partition (/) - so if Debian has / on
sda2 then Debian's grub/lilo gets installed to sda2 (not sda).  Likewise
if Ubuntu has / on sda1 then Ubuntu's grub/lilo is installed to sda1
(not sda).  You'd also install an additional grub/lilo into the MBR as
well, but this just presents a simple menu that then passes control to
the grub/lilo for the chosen distro.

It sounds complicated, but it's not.  Essentially when booting you'd
first be presented with the MBR menu; you make a selection (Debian)
which then passes control to the boot code in sda2 (in this example),
which happens to be grub/lilo... which presents you with a menu of
which kernel to load and any other options you've specified.

Grant.

-- 
The Mailing List for the Devon & Cornwall LUG
http://mailman.dclug.org.uk/listinfo/list
FAQ: http://www.dcglug.org.uk/linux_adm/list-faq.html