08.07
After my last post on multi-booting different operating systems on the same PC – which was written close to 18 months ago now – I have gained even more experience in setting up multi-boot systems and would like to take the opportunity to revise my previous post and supersede it with this guide.
Partitioning
My only advice with partitioning is to set sensible partition sizes. Most Linux distributions will sit and work happily on 10GB of drive space, though I usually give 20GB to leave some wiggle-room. Don’t forget to incorporate a swap partition for your Linux distribution, the general “rule of thumb” is to use the same amount of space as you have physical memory, so if you have 2GB of RAM, use a 2GB swap partition.
As you will be installing Windows first, you can go ahead and create the partitions for Windows and leave the rest of the space blank.
Installing the Operating Systems
The major difference to the last guide I posted is that this time I will be using GRUB – the Linux bootloader – to choose between operating systems when the machine boots. To do this, first install Windows as normal using your Windows installation media (CD or DVD).
When you have your Windows installation up-and-running, reboot and install Linux. I will be using Fedora as the Linux distribution in this guide as it’s the distribution I am most familiar with, but these instructions should be generic enough to apply to most distributions (Ubuntu, SuSE, Debian, etc).
Proceed with the Linux installation as normal, but look for the screen where the installer configures the bootloader. This could be hidden in an “Advanced” menu somewhere in some distributions, but on Fedora it is the last screen before the installation gets under way.
Your Windows installation should already be listed as “Other”. You can rename this if you want, and you may also be able to change the default option, depending on the options you have within your distribution’s installer. When you have the bootloader configured, move on and install Linux as normal.
When the machine reboots, you should be provided with a screen similar to this:

Congratulations, you now have a working dual-boot system!
Further Configuring GRUB
You can change quite a few options and customise your GRUB screen even further by editing GRUB’s “menu.lst” file. This is found in the /boot/grub folder, and you will have to use root (or sudo) priviledges to edit it as it is a system file.
A lot of in-depth information is available on the GNU GRUB Manual, however here is a quick run-down of a couple of the most useful options:
default – Sets the default option to use. The list is zero-based, so the top option is 0 and increases as you move down the list.
timeout – The number of seconds before GRUB automatically boots using the default option. Set this to 0 to disable the timeout.
hiddenmenu – This tells GRUB to hide the menu and just display a generic “press any key” message. Put a # before this line to comment it out if you want to view the menu by default.
Hopefully the above guide has been useful, please feel free to leave comments if you have any questions or suggestions!

Partitioning!? Surely with the duel-core chips virtualisation is the key to best utilising resources?
Also, I quick comment about your advice on SWAP. The “rule of thumb” you refer to doesn’t really hold water anymore. With 2GB+ of memory you should consider what it is you’ll be doing and tailor SWAP to your needs. Having said that, if you choose to use OpenSolaris, it’ll look after your SWAP for you, though I would guess Linux comes with this as an option?
I was aiming this at desktop users, so virtualisation would be a pretty advanced topic – VirtualBox is definitely a desktop-user-accessible tool, but the aim of this post was just to expand on the previous one – virtualisation is next in line
Re: the swap, I don’t think any Linux distro has a manageable swap partition. Disk space is pretty cheap these days (1TB drives can be had for under £70) so 2GB of swap really shouldn’t be too expensive to set aside in terms of resources.